zoukankan      html  css  js  c++  java
  • Android系统开发 编译系统签名的APP

    前言

      一般情况下,我们使用的签名都是自己生成的Java签名来编译APP. 但是,如果需要开发一些特定设备的APP(对权限有更高的要求,需求一些系统基本的权限,比如让APP可以控制设备的休眠),那就需要编译系统签名的APP.

      首先你还要明白,APP系统签名的文件必需是你当前设备的系统签名文件一致,这种签名文件只有你自己是Android系统开发才能获取到(Rom是你自己打包的).

    准备工作

    打包系统签名

    生成keystore文件

    • 将keytool-importkeypair、platform.pk8和platform.x509.pem文件放在同一个目录下,执行如下命令,会生成platform.keystore文件:
    sh keytool-importkeypair -k ./platform.keystore -p android -pk8 platform.pk8 -cert platform.x509.pem -alias platform
    • -p 表示新生成的keystore的密码是什么,这里为android
    • -pk8 表示要导入的pk8文件的名称,可以包括路径,pk8文件用来保存private key的,是个私钥文件。
    • -cert 表示要导入的证书文件,和pk8文件在同一个目录,pem这种文件就是一个X.509的数字证书,里面有用户的公钥等信息,是用来解密的,这种文 件格式里面不仅可以存储数字证书,还能存各种key。(有兴趣的可以点击此了解一下
    • -alias 表示给生成的platform.keystore取一个别名,这个名字只有我们在签名的时候才用的到,这里我们生成的文件名是platform。这个名字,可以随便取,但是你自己一定要记住。

    AndroidManifest.xml修改

    AndroidManifest.xml中添加共享系统进程属性,如下(三选一):

    android:sharedUserId="android.uid.system"
    android:sharedUserId="android.uid.shared"
    android:sharedUserId="android.media"

    在manifest节点中添加

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.y.demoapp"
        android:sharedUserId="android.uid.system">

    打包APP

      最后就是按照正常流程打包app了.在菜单栏选择 Build > Generate Signed Bundler or Apk > 点击进入菜单后选择APK > 然后选择你生成的签名文件,输入密码即可.

  • 相关阅读:
    [virsh] error: unknown OS type hvm解决办法
    TCP长连接与短连接的区别
    MySQL数据优化总结-查询备忘录
    Tomcat 调优测试
    MySQL的分表与分区
    iptables防火墙入门
    regex正则
    xtrabackup
    锁&lock与latch
    文档测试
  • 原文地址:https://www.cnblogs.com/guanxinjing/p/11410915.html
Copyright © 2011-2022 走看看