stellar 中文文档 下载 App

StellarProvider 与权限声明:AndroidManifest 的四行关键配置

Provider 是应用与服务的握手点:服务启动时通过它找到应用、确认 UID。配置必须逐字对齐,否则初始化阶段就会失败。

完整配置

<application>
    <!-- 其他组件 -->
    <provider
        android:name="roro.stellar.StellarProvider"
        android:authorities="${applicationId}.stellar"
        android:exported="true"
        android:multiprocess="false"
        android:permission="android.permission.INTERACT_ACROSS_USERS_FULL" />
    <meta-data
        android:name="roro.stellar.permissions"
        android:value="stellar" />
</application>

四个属性为什么是这样

属性要求原因
authorities必须是 ${applicationId}.stellar 格式服务按这个约定查找应用的 Provider
exported必须为 true服务进程要访问该 Provider
multiprocess必须为 false服务只在应用启动时获取 UID
permissionINTERACT_ACROSS_USERS_FULL限制只有 Shell 和应用本身可访问

权限 meta-data:基础与跟随启动

基础声明只带 stellar(核心 API 访问权限)。如果希望应用在服务启动时自动被唤醒,把值改为逗号分隔的列表:

<meta-data
    android:name="roro.stellar.permissions"
    android:value="stellar,follow_stellar_startup" />

声明了 follow_stellar_startup 之后,还需要在用户侧放行伴随启动权限、并让应用正确响应服务启动通知,完整链路见服务伴随启动。

对照:Shizuku 应用的差异

存量 Shizuku 应用清单里配的是 ShizukuProvider——那正是兼容层识别应用的标记,两边不要混配。新应用按本页写法来,权限体系见细分权限。

注意:规范限制,本页代码中的 <版本号> 等占位符替换后使用;属性名以仓库内最新接入指南为准。