- SL4A教程
- SL4A - 主页
- SL4A - Android 概述
- SL4A - Android 架构
- SL4A - Android 脚本层
- SL4A - 架构
- SL4A - Python 库
- SL4A - 开发环境
- SL4A - 配置您的设备
- SL4A - Android SDK 导航
- SL4A - 使用 Eclipse
- SL4A - 探索 Android API
- SL4A - 构建 GUI
- SL4A - 使用 Python Facades 的实用程序
- SL4A - 使用 Python 的后台脚本
- SL4A - 包装和分销
- SL4A 有用资源
- SL4A - 快速指南
- SL4A - 有用的资源
- SL4A - 讨论
SL4A - 探索 Android API
SL4A基于Facade Design Pattern与底层Android API进行通信。本章解释了外观设计模式的工作原理和不同的 SL4A API 外观。
什么是外观设计模式?
外观是一个提供接口的对象,可简化对应用程序中相关接口的访问。换句话说,外观将库的工作与客户端隔离,并充当每个子系统级别的入口点。因此,客户只能通过他们的外观进行交流。下图解释了同样的情况。
SL4A 和 Android API 外观
SL4A 为其支持的每种语言托管解释器。解释器通过称为外观的接口访问底层 Android API。
下表列出了顶层外观及其提供的功能 -
编号 | Android API 外观和描述 |
---|---|
1 | 活动结果外观 它设置脚本如何将信息作为活动返回。此方法意味着您的脚本将返回某种结果。结果类型可以设置为 RESULT_CANCELED(0) 或 RESULT_OK(-1) |
2 | Android外观 它提供对常见 Android 功能的访问,例如读取输入、通知、启动应用程序组件等。 |
3 | 应用程序管理器门面 列出所有可用和正在运行的包、启动活动、创建任务管理器或终止一组特定的包。 |
4 | BatteryManager外观 公开电池管理器并允许跟踪电池状态、健康状况、类型级别、电压等。 |
5 | 蓝牙门面 提供对蓝牙功能的访问,从基本连接功能到发送和接收 ASCII 和二进制数据。此外观至少需要 API 级别 5。 |
6 | 相机立面 此方法提供对所有相机相关功能的访问。允许使用设备的相机拍照并将其保存到指定路径。它提供了两个函数,即cameraCapturePicture和cameraInteractiveCapturePicture。这些功能仅限于使用设备后部的镜头。 |
7 | 共同意图外观 提供对常见 Android Intents 的访问,例如打开联系人列表、进行地图搜索、通过操作启动活动等。 |
8 | 联系方式门面 允许访问联系人,例如提供联系人列表以选择联系人、按属性查询联系人列表以及获取所有联系人及其 ID 和属性的列表。外观提供的一些方法包括contactsGet、pickContact、contactsGetById等。 |
9 | 事件门面 Android 操作系统维护一个事件队列,用于在应用程序之间异步传递信息。该外观提供了管理事件队列的功能,例如清除现有事件、发布新事件、列出、注册和取消注册广播信号等。方法示例包括 eventPost、eventClearBuffer 等。 |
10 | 无眼门面 可在 API 级别 4 以下的设备上使用。它允许脚本使用文本转语音技术进行对话。此外观现在已被 TextToSpeechFacade 取代。唯一可用的功能是 ttsSpeak。 |
11 | 位置外观 提供通过 GPS 或使用有关您当前使用的手机信号塔的信息来跟踪当前位置的功能。此功能需要有效的互联网连接才能进行实际查找。façade 提供了 getLastKnownLocation、startLocating、stopLocating、readLocation 等方法。 |
12 | 媒体播放器门面 允许播放媒体文件、控制媒体播放器、查询媒体播放器的当前状态以及获取有关媒体文件的信息。mediaIsPlaying、mediaPlayInfo 和 mediaPlayList 返回媒体播放器的当前状态。对 startActivity 函数的调用将启动媒体播放器。mediaPlay、mediaPlayPause、mediaPlayClose、mediaPlaySeek、mediaPlayStart 和 mediaPlaySetLooping 等函数用于控制媒体播放器。 |
13 | 媒体记录器门面 该外观提供音频和视频录制功能。startInteractiveVideoRecording、recorderStartMicrophone、recorderCaptureVideo 函数分别用于启动和开始音频/视频录制。要结束先前开始的录音,请调用 recorderStop 函数。 |
14 | 电话门面 以编程方式提供基本的电话操作,例如跟踪电话状态、漫游状态、发起呼叫、SIM 信息等。方法的示例包括phoneCallNumber、phoneDialNumber、getCellLocation 等。 |
15 | 首选项外观 允许访问共享首选项,例如获取现有首选项列表以及阅读、修改和添加新首选项。SL4A r4 版本支持三个函数:prefGetAll、prefGetValue 和 prefPutValue。 |
16 | 传感器管理器外观 允许跟踪传感器数据,例如光、加速度、磁场和方向。要启动/停止感测,请使用 startSensing(已弃用,并由 SL4r4 替换为 startSensingThreshold 和 startSensingTimed)和 stopSensing 函数调用。readSensors、sensorsGetLight、sensorsReadAccelerometer、sensorsReadMagnetometer 和sensorsReadOrientation 是该外观提供的函数。 |
17 号 | 设置外观 提供对不同手机设置的访问,如铃声音量、屏幕亮度、飞行模式、振动、媒体音量等。此外观提供的功能包括 checkAirplaneMode、checkRingersilentMode 和 checkScreenOn(至少 API 级别 7)、getVibrateMode、setScreenTimeout、toggleVibrateMode setRingerVolume 等。 |
18 | 信号强度门面 允许监控电话信号强度。调用startTrackingSignalStrengths函数开始收集数据。调用 readSignalStrengths 函数开始收集数据。要关闭进程,请调用 stoptrackingSignalStrengths 函数。它至少需要 API 级别 7。 |
19 | 短信门面 具有删除、读取、标记、发送短信等功能。该外观提供的功能示例包括 smsMarkMessageRead、smsDeleteMessage、smsSend 等。 |
20 | 语音识别门面 允许向脚本添加语音识别功能。它只有一个名为 recognizeSpeech 的函数。 |
21 | 文字转语音外观 为API4及更高版本提供TTS服务。要让设备说话,请使用 ttsSpeak 函数。要确定发言功能是否已完成,请使用 ttsIsSpeaking 函数。 |
22 | 音调发生器外观 为给定的数字生成 DTMF 音。要使用它,您必须调用generateDtmfTones函数。 |
23 | 用户界面外观 提供创建用户界面元素(如文本框、复选框、日期选择器等)的功能。它还允许交互式使用 HTML 页面。 |
24 | 唤醒锁门面 提供创建唤醒锁的函数包括wakeLockAcquireBright、wakeLockAcquireDim、wakeLockAcquireFull和wakelockAcquirePartial。 |
25 | 网络摄像头外观 该外观至少需要 API 级别 8。它允许将 MJPEG 流从前置设备摄像头传输到网络。要启动/停止网络摄像头,请分别使用 webcamStart 和 webcamStop 函数。要在流式传输时调整视频质量,请使用 webcamAdjustQuality 函数。 |
26 | Wifi门面 帮助您控制设备上的 Wi-Fi 无线电。它允许脚本查询 Wi-Fi 连接状态、搜索接入点、连接和断开 WiFi 网络以及在脚本执行期间保持 Wi-Fi 锁定。 |
有关这些外观提供的方法的完整列表,请参阅https://code.google.com 。后续章节说明如何使用 Android Façade API 函数创建实用程序。