1 
                    
                    Cheons      2018-12-06 23:32:59 +08:00 via Android 
                    
                    我所知能静默安装的只有厂商自家商店.apk ,别的自带更新都需要从商店,包括谷歌。你们家的应用何德何能? 
                打算自己做 ROM 嘛?还是开发个新系统? 另外能透露下那个公司嘛,我好尽量避开你们家产品 。 谢谢!  | 
            
     2 
                    
                    leido      2018-12-06 23:38:16 +08:00 via Android 
                    
                    这特么叫什么需求,扯蛋呢 
                 | 
            
     3 
                    
                    300      2018-12-06 23:59:30 +08:00 via Android 
                    
                    换领导、找厂商要签名、静默 root 改系统文件哪个简单点== 
                是公开的应用还是那种定制的设备上跑的?后者的话我是直接找厂商要密钥的,虽然自带 root== 要是公开的应用,你这不相当于病毒吗==  | 
            
     4 
                    
                    ysc3839      2018-12-07 00:00:06 +08:00 via Android 
                    
                    没记错的话系统应用就可以静默安装,既然都可以修改 system 分区的内容了那装一个无界面的系统应用不就好了吗? 
                 | 
            
     5 
                    
                    canrom7   OP 谢谢回复,不要歪了; 
                然后回:厂商自家的应用商店就是用的 android:sharedUserId="android.uid.system" 方式共享 system 进程实现的静默安装。  | 
            
     7 
                    
                    Orciorc      2018-12-07 00:03:59 +08:00 via Android 
                    
                    某个版本以前,可以安装和系统程序包名相同的程序,以获取 root 权限。不过早就封掉了。现在做自动安装的,无障碍模式模拟点击居多。 
                 | 
            
     8 
                    
                    zzzmode      2018-12-07 00:05:42 +08:00 via Android 
                    
                    找合作厂商签名 
                 | 
            
     9 
                    
                    iAcn      2018-12-07 00:10:31 +08:00 via Android 
                    
                    1. 是公开的应用还是为某个设备单独定制的? 
                2. 既然已经要去 Root 了为何还要去加 uid 呢? 3. Patch services.jar 的方式非常麻烦。需要处理 odex/vdex/cdex 的合并、国内各种 UI 的兼容性、Android 各个版本的兼容等。弄不好还会开不了机,而且就算备份了,也只能去引导用户手动恢复  | 
            
     10 
                    
                    ooh      2018-12-07 00:12:33 +08:00 
                    
                    你们老板连签名都要不来还好意思给你布置这个任务,不会是你当时把话说太满吧...😂 
                 | 
            
     11 
                    
                    iAcn      2018-12-07 00:13:37 +08:00 via Android 
                    
                    接上一条。patch jar 的方式实在不推荐。可以参考国内各大市场的做法,Root 的话就 pm install,没有的话就辅助功能(无障碍)模拟去点击那个安装的按钮。 
                 | 
            
     15 
                    
                    iAcn      2018-12-07 00:22:31 +08:00 via Android 
                    
                    @canrom7 加 android.uid.system 需要厂商签名;放在 /system/app 或 priv-app 下。手动装肯定是装不上的。 
                 | 
            
     17 
                    
                    gam2046      2018-12-07 08:38:03 +08:00    android.uid.system 需要应用具有 platforms 或 system 签名。而与安装位置无关,不要求安装为系统应用。 
                而你提出的方案: 1、ROOT 设备 2、去除签名验证 3、反 ROOT 而当你满足步骤 1 时,已经可以静默安装应用,为何舍近求远呢?  | 
            
     18 
                    
                    CFM880      2018-12-07 08:55:07 +08:00 
                    
                    有 root 权限后,pm 命令安装也是可以的 
                 | 
            
     19 
                    
                    lionseun      2018-12-07 09:18:43 +08:00 via Android 
                    
                    可以找後門,讓系統幫你靜默安裝 
                 | 
            
     20 
                    
                    canrom7   OP  | 
            
     21 
                    
                    liuyanjun0826      2018-12-07 09:26:45 +08:00 via Android 
                    
                    @canrom7 hash 懂吗? 
                 | 
            
     22 
                    
                    liuyanjun0826      2018-12-07 09:27:52 +08:00 via Android 
                    
                    你这直接百度就可以,发 V2EX 什么鬼 
                 | 
            
     23 
                    
                    xylophone21      2018-12-07 09:36:04 +08:00 
                    
                    看起来你是希望先 root,然后出厂的时候移除 root,但仍保留自己的应用能静默安装。 
                有没有想过这样每台的交付都会很麻烦。 另外,可以尝试一下自己打包一个只能 pm install 的 su 进去,并且执行前校验来源,不想从头做的话,拿着 su 的代码去改。  | 
            
     24 
                    
                    CodingPuppy      2018-12-07 09:47:59 +08:00 via Android 
                    
                    问 rom 平台要签名吧,要不就 root。 
                 | 
            
     25 
                    
                    rumengzhenxing      2018-12-07 09:49:26 +08:00 
                    
                    root 
                 | 
            
     26 
                    
                    canrom7   OP @iAcn  两个目录都放了,带上 android.uid.system 重启后还是无法安装,不带 android.uid.system 重启后安装上了,但是没有静默 ins 的权限 
                 | 
            
     27 
                    
                    liuyanjun0826      2018-12-07 10:00:49 +08:00 via Android 
                    
                    傻逼啊,还是穷疯了,手机又不是土豆,你们在那胡说什么呢😊 
                 | 
            
     28 
                    
                    gam2046      2018-12-07 10:04:38 +08:00 
                    
                    @canrom7 正统方法,寻找 OEM 方,请求将你的应用签署 platforms 或 system 签名即可。相比较这是最不折腾的方案。具有签名后,不要求预装,即使后期用户自行安装一样具有该权限。 
                 | 
            
     29 
                    
                    LeungV2      2018-12-07 10:10:20 +08:00 
                    
                    前几天客户网上下的一个 APK 也是签名相同的问题不能安装到我们的 ROM,然后拿签名文件签一下就 OK 
                 | 
            
     33 
                    
                    skylancer      2018-12-07 15:04:23 +08:00 
                    
                    @liuyanjun0826 精神 Google 产品经理开始精神分裂了嘛 
                 | 
            
     34 
                    
                    shily      2018-12-07 17:55:05 +08:00 
                    
                    首先肯定拿不到 OEM 的签名的,否则签名机制就是玩笑了。 
                参考 #16 楼,应用可以申请 android.permission.INSTALL_PACKAGES 权限,但这个权限仅授予 System 应用(如果能把应用放到 /system/app 下,系统就会认为是系统应用了,android 2.x 是放到 /system/app 下,之后的版本因为不做 OEM 了,不知道放到哪个目录了),这样就可以拥有 INSTALL_PACKAGES 权限了。 设置 android.uid.system 的目的是共享 Settings 这个应用的 UID,Settings 当然有这个权限,所以无论是否申请都具有这个权限,但是限制是,只有系统签名的应用才可以使用同一个 uid,如果不是系统签名就无法安装。  | 
            
     35 
                    
                    Trumeet      2018-12-08 11:42:37 +08:00 
                    
                    OEM 签名别想了,第三方想安装只能 ROOT,PM#installPackage 走起,或者 pm install 命令 
                 | 
            
     36 
                    
                    Trumeet      2018-12-08 11:42:58 +08:00 
                    
                    而且都有 Root 了,改 service 干啥... 
                 | 
            
     37 
                    
                    Trumeet      2018-12-08 11:44:04 +08:00 
                    
                    自己的设备,找领导要签名 
                友军的设备,让他们去签 /找领导要签名 没有签名 -> 洗洗睡  | 
            
     38 
                    
                    wanjunlengfeng      2018-12-26 20:16:36 +08:00 
                    
                    我已经实现了把不需要系统签名验证,直接安装带有 android:sharedUserId 的 app,不过我没有发现 app 好像不具有天然的 root 的权限.而仅仅是相同 UID 权限共享而已. 
                不知道是不是这种情况?  | 
            
     39 
                    
                    wanjunlengfeng      2018-12-26 20:21:07 +08:00 
                    
                    实现方式 是通过 XPOSED ,busybox 实现的,你们可以自己尝试下 
                 | 
            
     40 
                    
                    canrom7   OP @wanjunlengfeng  是的  uid 用户组属于 system 的权限级别是低于 root 的,但是也可以做很多事情了,相当于 adb 的 shell 的权限了,可以直接启动黑域这类软件,不需要借助 PC 了 
                 | 
            
     41 
                    
                    canrom7   OP @wanjunlengfeng  具体的细节方便多透露一些吗?  谢谢你了 
                 |