如何在 Android ROM 中禁止安装 APP?然后让所有刷了这个 ROM 的系统都无法安装 APP? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dozer47528
V2EX    Android

如何在 Android ROM 中禁止安装 APP?然后让所有刷了这个 ROM 的系统都无法安装 APP?

  •  
  •   dozer47528 2017-02-12 11:28:17 +08:00 20469 次点击
    这是一个创建于 3178 天前的主题,其中的信息可能已经有所发展或是发生改变。
    其实,我真正想知道的是,我的车载系统是一个被阉割过的 Anoroid ,它不允许装 APP 。
    但是论坛里有人试验了一下,直接把 APP 放刷机包里再刷机,竟然是可以运行的。
    所以,有人知道怎么去掉这个限制吗?这样我的车载系统就可以直接装 APP 了,不用刷机了。

    帖子在这里:
    http://club.autohome.com.cn/bbs/thread-c-859-60328815-1.html
    第 1 条附言    2017-02-13 15:38:26 +08:00
    补充一下, PackageInstaller.apk 是有的,下载下来的 apk 也是可以安装的。
    但是安装的最后一步,总是弹出:安装未成功
    16 条回复    2017-02-27 16:03:04 +08:00
    SkyEcho
        1
    SkyEcho  
       2017-02-12 11:37:50 +08:00 via iPhone
    这都是定制系统,不允许安装 app 这个选项是写在系统源码的配置文件里的。除非有什么漏洞或者后门,否则是没有办法安装的。
    dozer47528
        2
    dozer47528  
    OP
       2017-02-12 11:42:19 +08:00
    @a302800411
    有道理,可能用的不是通用的解决方案。
    看它没有防范的很严格,或许配置就是个文本文件,我全文搜索看看。
    uyhsefwa
        3
    uyhsefwa  
       2017-02-12 12:13:55 +08:00 via Android
    @dozer47528 既然能修改刷机包,可以尝试一下直接把它 root 了,然后通过 root 权限安装软件,不过汽车这个东西建议你还是不要乱动,弄个安卓手机导航算了呗
    dozer47528
        4
    dozer47528  
    OP
       2017-02-12 12:21:12 +08:00
    @771456556
    root 什么的不是很懂,没研究过 android ,回头上班了找公司里的同事看看。

    网友已经实现改包装上高德导航了,其实已经很满足了,只是每次更新 app 有点麻烦而已。
    dphdjy
        5
    dphdjy  
       2017-02-12 12:58:09 +08:00   1
    lz 知道 “软件包安装程序“ 已停止运行 这个 bug 吗~

    比起改源码,直接把这个 APP 删了,即安装不了应用,又不会和其他部分冲突。

    用 adb 就可以安装进去了,或者有权限移动到 app 目录,重启会 ”正在更新应用程序(0/1)“。

    刷机也是直接刷到 app 目录,启动自行引导。

    不过也可能其他问题~
    ShunYea
        6
    ShunYea  
       2017-02-12 13:01:10 +08:00   2
    以前做 ROM 的时候我记得,安装 APK 是靠另一个 APK 来实现的,随便翻看了我以前的 stuff ,华为 C8816 的 system/app 里的 PackageInstller.apk 就是负责 APK 安装的 APK ,把这个删了应该就无法安装任何 APK 了。印象中记得 360 手机管家好像还自带了类似的程序来接管和代替系统自带的这个 PackageInstaller.apk ,也就是说原系统的找不到你可以找第三方的 PackageInstaller.apk 。
    其他机型的不一定是这个名字 PackageInstaller.apk ,你自己推敲。
    ShunYea
        7
    ShunYea  
       2017-02-12 13:02:44 +08:00   1
    直接把 APP 放刷机包里再刷机,竟然是可以运行的。

    也就是做 ROM 时候直接集成到 system/app 里,相当于一次性安装好了。所以肯定能运行,所以应该再次证明这个 ROM 只是删掉了 PackageInstaller.apk ,个人猜测。
    freestyle
        8
    freestyle  
       2017-02-12 13:19:41 +08:00 via iPhone
    既然能刷机肯定能 root 把 apk 扔进 /system/app 下,然后解压 apk 里的*.so 文件放到 /system/lib 下,这样就可以手动安装到系统 刷增量包只是把这个过程打包成刷机脚本
    dozer47528
        9
    dozer47528  
    OP
       2017-02-12 15:06:08 +08:00
    @ShunYea PackageInstaller.apk 还在的,我继续看看还有哪动了手脚
    springz
        10
    springz  
       2017-02-12 15:41:18 +08:00
    adb 连上直接 install 应该是可以的吧
    springz
        11
    springz  
       2017-02-12 15:42:12 +08:00
    adb 用不了的话拆开看看,肯定有串口直接连上电脑就是 root 用户
    Jasmine2016
        12
    Jasmine2016  
       2017-02-13 15:15:59 +08:00
    一开始我想的是「未知源」这个开关。
    dozer47528
        13
    dozer47528  
    OP
       2017-02-13 15:39:10 +08:00
    @Jasmine2016 这个开关可以打开,能安装,但是到了最后显示:安装未成功
    k332159915
        14
    k332159915  
       2017-02-27 15:31:21 +08:00
    @dozer47528 应该跟我这个问题是一样的 t/343446 系统对应用签名有限制。
    dozer47528
        15
    dozer47528  
    OP
       2017-02-27 15:51:36 +08:00
    @k332159915 如果是这个问题的话,为什么直接放在刷机包的 /data/app 目录下,是可以正常使用的?
    k332159915
        16
    k332159915  
       2017-02-27 16:03:04 +08:00
    @dozer47528 正常情况下安卓系统的安装机制应该是通过 PackageInstaller.apk 处理 apk 包并检验签名文件,这个步骤有助于检查本机是否有相同包名或者相同签名的文件(我猜的),然后这个机器固件应该有签名白名单之类的设定,只能指定签名文件才能通过 PackageInstaller.apk 的检测,所以签名不符合是通过不了的,到最后都会提示应用未安装。复制大法是直接将应用 cp 到 /app 目录下,这一步就跳过了 PackageInstaller.apk 这个检测环节,当然是可以成功的。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     937 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 18:34 PVG 02:34 LAX 11:34 JFK 14:34
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86