LineageSDK 简介
撰写于 2018 年 3 月 20 日,作者 jrizzoli
面向开发者的 LineageSDK 简介
LineageOS 是一个面向所有人的操作系统:从普通用户到高级开发者。 虽然用户可以通过大量的自定义选项尽情发挥,但我们也希望 LineageOS 成为开发者乐园。官方构建的标准有助于确保开发者的应用程序不会因为不恰当的 Android API 更改或硬件支持问题而陷入糟糕的状态,但这对于我们来说还不够;我们正在发布一些新的 API,这些 API 将允许您的应用程序在搭载 LineageOS 的设备上运行时执行更多操作。
Lineage 平台 SDK(简称 LineageSDK)是一个强大的资源,它使我们能够将我们的功能保留在核心 Android 框架之外(为了更好的安全性和更简单的启动流程),并向应用程序开发者公开一些额外的功能。
第一个正式版本 Ilama (API 9) 是第一个公开迭代版本,它为您的应用程序提供了一组有用的 API。 我们在我们的 wiki 上创建了一个章节,其中包含您可能需要的所有文档,包括示例代码片段和 javadoc。
以下是我们最喜欢的此版本 API
样式 API
我们最近在 LineageOS 15.1 上引入了系统样式,允许用户通过深色模式和自定义强调色来定制设备的外观。
通过 Styles API,您只需使用官方的 AppCompat-v7 库,即可为您的应用提供可选的自动深色主题。 您无需包含新的外部库或进行大量的代码更改,即可为您的用户提供与系统同步的 UI。 在未运行 LineageOS 的设备上,您可以公开一个切换开关来控制样式。 就是这样:一个适用于所有人的轻松全局浅色/深色模式。
如果您希望您的应用来主题化系统呢? 音乐播放器可以根据专辑封面调整系统的强调色,或者您的天气应用可以在天气恶劣时设置深色模式,而在阳光明媚时设置浅色模式:天空才是您的极限。
请访问 API wiki 页面 以获取更详细的信息,包括代码片段。
配置文件 API
系统配置文件是 LineageOS 最强大的功能之一,它们允许通过单击来更改多个设备的首选项。 可以手动或使用预定义的触发器(使用 WiFi、蓝牙和/或 NFC)启用配置文件。 配置文件包含一组指令来控制设备的硬件和软件,包括(但不限于)网络、音量和显示调整。
假设您正在为下一个大型 IOT 产品开发控制器应用程序,并且您希望您的设备在发生某些事情时进行调整。 通过 Profiles API,您可以在与 IOT 设备进行交互时,扩展触发功能(通过启用用户创建或预定义的配置文件),使用您的官方 API。
配置文件 API 使应用程序能够以新的方式控制手持设备,而无需担心安全问题或使用可能在不同版本之间破坏/更改的非官方未记录的 API。
请访问 API wiki 页面 以获取更详细的信息,包括代码片段。
这些只是您将在 LineageSDK 中找到的各种 API 中的几个示例,您可以查看完整的文档以查看所有 API。
总结
LineageSDK API 9 现在正随本周的 LineageOS 15.1 版本一起推出,并且随着新 API 的添加和稳定,将在未来不定期发布的博客文章中宣布新版本。
SDK 是完全开源的,欢迎在 我们的 gerrit 上贡献(包括新的 API),因此您可以使这个平台朝着对您的应用程序和整个生态系统有用的方向发展和演进。
要开始使用,请访问此wiki 页面。
如果您有任何问题,您可以在我们的 subreddit 上联系我们,或加入 #lineageos-dev Libera.Chat IRC 频道。