首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Android

关于系统应用启动问题

  •  
  •   Icex · 29 天前 · 1049 次点击

    我将定制 apk 签名为系统应用(以下简称为 S 应用),并且放置于 system/app 文件夹下,机器重启时也顺利安装了; 但是由于 S 应用重未启动过,所以无法接收到系统的开机广播来完成自启。 于是我想到了使用用户 app 发送特定的广播,并为该广播加入 FLAG_INCLUDE_STOPPED_PACKAGES 特性,但是 S 应用还是未能接收到用户 app 发送的特定的广播。 如果 S 应用安装在 data/app 下,使用用户 app 发送的广播则能接受,是否是因为用户 app 发送的广播系统级别的应用时无法接收的?不可跨级通讯?

    6 回复  |  直到 2019-11-13 10:43:41 +08:00
        1
    ericcode   29 天前   ♥ 1
    按理说,安装在 system/app 下边就可以搜到开机广播啊,你的 UID 是 1000 吗
        2
    frantic   29 天前
    我记得以前在哪看过 FLAG_INCLUDE_STOPPED_PACKAGES 对系统应用无效
        3
    fireking   28 天前
    我也是用系统的签名加签,再放到 system/app 下,能够起来,对了,记得在 manifest 里面加 android:sharedUserId="android.uid.system",这样开机广播就会自动注册
        4
    Icex   28 天前
    @frantic 这样子,我在探索一下
        5
    Icex   28 天前
    @fireking 加了 android.uid.system 了,但是我的应用是只要一个服务的的应用
        6
    Icex   27 天前
    @ericcode 是的,uid 已经声明为 1000 了
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4150 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 26ms · UTC 08:11 · PVG 16:11 · LAX 00:11 · JFK 03:11
    ♥ Do have faith in what you're doing.