SL4A - การสำรวจ Android API
SL4A เป็นไปตามรูปแบบการออกแบบซุ้มเพื่อสื่อสารกับ Android API บทนี้จะอธิบายถึงการทำงานของFaçade Design Pattern และ SL4A API facades ต่างๆ
รูปแบบการออกแบบซุ้มคืออะไร?
ซุ้มเป็นวัตถุที่จัดเตรียมอินเทอร์เฟซที่ช่วยลดความยุ่งยากในการเข้าถึงอินเตอร์เฟสที่เกี่ยวข้องในแอปพลิเคชัน กล่าวอีกนัยหนึ่งfaçadeจะป้องกันการทำงานของไลบรารีจากไคลเอนต์และทำหน้าที่เป็นจุดเริ่มต้นของระบบย่อยแต่ละระดับ ดังนั้นลูกค้าจะสื่อสารผ่านอาคารของพวกเขาเท่านั้น ภาพประกอบต่อไปนี้อธิบายเช่นเดียวกัน
SL4A และ Android API Facades
SL4A โฮสต์ล่ามสำหรับแต่ละภาษาที่รองรับ ล่ามเข้าถึง Android APIs ที่เป็นพื้นฐานผ่านอินเทอร์เฟซที่เรียกว่าfaçade
ตารางต่อไปนี้แสดงรายการอาคารระดับบนสุดและฟังก์ชันที่มีให้ -
ส. | Android API Facade และคำอธิบาย |
---|---|
1 | ActivityResultFacade ตั้งค่าว่าสคริปต์ของคุณจะส่งคืนข้อมูลเป็นกิจกรรมอย่างไร วิธีนี้บอกเป็นนัยว่าสคริปต์ของคุณจะส่งคืนผลลัพธ์บางอย่าง ประเภทผลลัพธ์สามารถกำหนดเป็น RESULT_CANCELED (0) หรือ RESULT_OK (-1) |
2 | AndroidFacade ให้การเข้าถึงฟังก์ชั่นทั่วไปของ Android เช่นการอ่านข้อมูลการแจ้งเตือนการเปิดส่วนประกอบแอปพลิเคชันเป็นต้น |
3 | ApplicationManagerFacade แสดงรายการแพ็กเกจที่พร้อมใช้งานทั้งหมดเปิดตัวกิจกรรมสร้างตัวจัดการงานของคุณหรือยุติชุดแพ็กเกจเฉพาะ |
4 | BatteryManagerFacade เปิดเผยตัวจัดการแบตเตอรี่และอนุญาตให้ติดตามสถานะแบตเตอรี่สุขภาพระดับประเภทแรงดันไฟฟ้า ฯลฯ |
5 | BluetoothFacade ให้การเข้าถึงความสามารถของบลูทู ธ ตั้งแต่คุณสมบัติการเชื่อมต่อพื้นฐานไปจนถึงการส่งและรับทั้ง ASCII และข้อมูลไบนารี ด้านหน้านี้ต้องการ API ระดับ 5 เป็นอย่างน้อย |
6 | CameraFacade วิธีนี้ช่วยให้สามารถเข้าถึงฟังก์ชั่นที่เกี่ยวข้องกับกล้องทั้งหมด อนุญาตให้ถ่ายภาพโดยใช้กล้องของอุปกรณ์และบันทึกไปยังเส้นทางที่ระบุ มีสองฟังก์ชั่นคือ cameraCapturePicture และ cameraInteractiveCapturePicture ฟังก์ชั่นเหล่านี้ใช้สำหรับการใช้เลนส์ที่ด้านหลังของอุปกรณ์อย่างเคร่งครัด |
7 | CommonIntentsFacade ให้การเข้าถึง Android Intents ทั่วไปเช่นการเปิดรายชื่อผู้ติดต่อการค้นหาแผนที่การเริ่มต้นกิจกรรมโดยการกระทำเป็นต้น |
8 | ContactsFacade อนุญาตให้เข้าถึงผู้ติดต่อเช่นการให้รายชื่อผู้ติดต่อสำหรับการเลือกผู้ติดต่อการสืบค้นรายชื่อผู้ติดต่อตามแอตทริบิวต์และรับรายชื่อผู้ติดต่อทั้งหมดพร้อม ID และแอตทริบิวต์ วิธีการบางอย่างที่จัดทำโดยfaçade ได้แก่ contactGet, pickContact, contactGetById เป็นต้น |
9 | EventFacade ระบบปฏิบัติการ Android เก็บรักษาคิวเหตุการณ์สำหรับการส่งผ่านข้อมูลระหว่างแอปพลิเคชันแบบอะซิงโครนัส ด้านหน้านี้มีฟังก์ชันในการจัดการคิวเหตุการณ์เช่นการล้างเหตุการณ์ที่มีอยู่การโพสต์กิจกรรมใหม่การลงรายการการลงทะเบียนและการยกเลิกการลงทะเบียนสัญญาณการออกอากาศเป็นต้นตัวอย่างของวิธีการ ได้แก่ eventPost, eventClearBuffer เป็นต้น |
10 | EyesFreeFacade พร้อมใช้งานบนอุปกรณ์ที่ต่ำกว่า API ระดับ 4 ซึ่งอนุญาตให้สคริปต์พูดโดยใช้เทคโนโลยีแปลงข้อความเป็นคำพูด ตอนนี้ด้านหน้านี้ถูกแทนที่ด้วย TextToSpeechFacade ฟังก์ชันเดียวที่ใช้ได้คือ ttsSpeak |
11 | LocationFacade มีฟังก์ชั่นที่ช่วยให้สามารถติดตามตำแหน่งปัจจุบันโดยใช้ GPS หรือโดยใช้ข้อมูลเกี่ยวกับเสาสัญญาณมือถือที่คุณกำลังใช้งานอยู่ คุณลักษณะนี้ต้องการการเชื่อมต่ออินเทอร์เน็ตที่ใช้งานได้เพื่อทำการค้นหาจริง façadeมีวิธีการเช่น getLastKnownLocation, startLocating, stopLocating, readLocation เป็นต้น |
12 | MediaPlayerFacade อนุญาตให้เล่นไฟล์สื่อควบคุมเครื่องเล่นสื่อค้นหาสถานะปัจจุบันของเครื่องเล่นสื่อและรับข้อมูลเกี่ยวกับไฟล์สื่อ mediaIsPlaying, mediaPlayInfo และ mediaPlayList ส่งคืนสถานะปัจจุบันของเครื่องเล่นสื่อ การเรียกใช้ฟังก์ชัน startActivity จะเปิดตัวเครื่องเล่นสื่อ ฟังก์ชันต่างๆเช่น mediaPlay, mediaPlayPause, mediaPlayClose, mediaPlaySeek, mediaPlayStart และ mediaPlaySetLooping ถูกใช้เพื่อควบคุมเครื่องเล่นสื่อ |
13 | MediaRecorderFacade ด้านหน้านี้มีความสามารถในการบันทึกเสียงและวิดีโอ startInteractiveVideoRecording, recorderStartMicrophone, recorderCaptureVideo ใช้ฟังก์ชันเพื่อเปิดและเริ่มการบันทึกเสียง / วิดีโอตามลำดับ หากต้องการสิ้นสุดการบันทึกที่เริ่มต้นก่อนหน้านี้ให้เรียกใช้ฟังก์ชัน recorderStop |
14 | PhoneFacade ทำให้การใช้งานโทรศัพท์พื้นฐานพร้อมใช้งานเช่นการติดตามสถานะโทรศัพท์สถานะการโรมมิ่งการเริ่มต้นการโทรข้อมูลซิม ฯลฯ โดยใช้โปรแกรม ตัวอย่างวิธีการ ได้แก่ phoneCallNumber, phoneDialNumber, getCellLocation เป็นต้น |
15 | PreferencesFacade อนุญาตให้เข้าถึงค่ากำหนดที่ใช้ร่วมกันเช่นรับรายการค่ากำหนดที่มีอยู่และการอ่านแก้ไขและเพิ่มค่ากำหนดใหม่ มีสามฟังก์ชันที่รองรับโดย SL4A r4 รีลีส: prefGetAll, prefGetValue และ prefPutValue |
16 | SensorManagerFacade อนุญาตให้ติดตามข้อมูลเซ็นเซอร์เช่นแสงความเร่งสนามแม่เหล็กและการวางแนว ในการเริ่ม / หยุดการตรวจจับให้ใช้ startSensing (เลิกใช้แล้วและแทนที่ด้วย startSensingThreshold และ startSensingTimed โดย SL4r4) และการเรียกฟังก์ชัน stopSensing readSensors, sensorsGetLight, sensorsReadAccelerometer, sensorsReadMagnetometer และ sensorsReadOrientation เป็นฟังก์ชั่นที่มาจากfaçadeนี้ |
17 | SettingsFacade ให้การเข้าถึงการตั้งค่าโทรศัพท์ที่แตกต่างกันเช่นระดับเสียงเรียกเข้า, ความสว่างของหน้าจอ, โหมดเครื่องบิน, การสั่น, ระดับเสียงของสื่อ ฯลฯ ฟังก์ชั่นที่มีให้ในส่วนหน้านี้ ได้แก่ checkAirplaneMode, checkRingersilentMode และ checkScreenOn (atleast API ระดับ 7), getVibrateMode, setScreenTimeout, toggleVibrateMode setRingerVolume เป็นต้น |
18 | SignalStrengthFacade อนุญาตให้ตรวจสอบความแรงของสัญญาณโทรศัพท์ เรียกใช้ฟังก์ชัน startTrackingSignalStrengths เพื่อเริ่มรวบรวมข้อมูล เรียกใช้ฟังก์ชัน readSignalStrengths เพื่อเริ่มรวบรวมข้อมูล หากต้องการปิดกระบวนการให้เรียกใช้ฟังก์ชัน stoptrackingSignalStrengths ต้องมี API ระดับ 7 เป็นอย่างน้อย |
19 | SmsFacade มีฟังก์ชั่นสำหรับการลบอ่านทำเครื่องหมายและส่งข้อความ SMS ตัวอย่างของฟังก์ชั่นที่จัดทำโดยfaçadeนี้ ได้แก่ smsMarkMessageRead, smsDeleteMessage, smsSend เป็นต้น |
20 | SpeechRecognitionFacade เปิดใช้งานการเพิ่มฟังก์ชันการรู้จำเสียงให้กับสคริปต์ มีเพียงฟังก์ชันเดียวที่ชื่อ rememberSpeech |
21 | TextToSpeechFacade ให้บริการ TTS สำหรับ API4 และใหม่กว่า หากต้องการให้อุปกรณ์พูดให้ใช้ฟังก์ชัน ttsSpeak หากต้องการตรวจสอบว่าฟังก์ชันพูดเสร็จสมบูรณ์ให้ใช้ฟังก์ชัน ttsIsSpeaking หรือไม่ |
22 | ToneGeneratorFacade สร้างโทนเสียง DTMF สำหรับตัวเลขที่กำหนด ในการใช้งานคุณต้องเรียกใช้ฟังก์ชัน createDtmfTones |
23 | UiFacade จัดเตรียมฟังก์ชันสำหรับการสร้างองค์ประกอบส่วนติดต่อผู้ใช้เช่นกล่องข้อความช่องทำเครื่องหมาย datepickers เป็นต้นนอกจากนี้ยังอนุญาตให้ใช้หน้า HTML แบบโต้ตอบ |
24 | WakeLockFacade มีฟังก์ชันในการสร้าง Wake Lock ได้แก่ wakeLockAcquireBright, wakeLockAcquireDim, wakeLockAcquireFull และ wakelockAcquirePartial |
25 | WebCamFacade ส่วนหน้านี้ต้องใช้ API ระดับ 8 เป็นอย่างน้อยโดยอนุญาตให้สตรีมสตรีม MJPEG จากกล้องถ่ายรูปด้านหน้าไปยังเครือข่าย ในการเริ่ม / หยุดเว็บแคมให้ใช้ฟังก์ชัน WebcamStart และ WebcamStop ตามลำดับ ในการปรับคุณภาพของวิดีโอขณะสตรีมให้ใช้ฟังก์ชัน WebcamAdjustQuality |
26 | WifiFacade ช่วยให้คุณควบคุมวิทยุ Wi-Fi บนอุปกรณ์ของคุณ อนุญาตให้สคริปต์สืบค้นสถานะของการเชื่อมต่อ Wi-Fi ค้นหาจุดเชื่อมต่อเชื่อมต่อและยกเลิกการเชื่อมต่อเครือข่าย WiFi และล็อค Wi-Fi ระหว่างการเรียกใช้สคริปต์ |
อ้างถึง https://code.google.comสำหรับรายการวิธีการทั้งหมดที่มีให้โดยอาคารเหล่านี้ บทต่อ ๆ ไปจะแสดงวิธีสร้างยูทิลิตี้โดยใช้ฟังก์ชัน Android Façade API