Android app系统签名方法

1. 如果有项目代码那就非常简单了, 直接吧apk放到vendor下面,添加Android.mk,然后mm编译即可得到系统签名后的产物.

Android.mk文件参考源码vendor/google/apps/Android.mk文件,因为该目录下都是apk文件,一部分是需要系统签名的apk(LOCAL_CERTIFICATE := platform),而另一部分是不需要签名的apk(LOCAL_CERTIFICATE := PRESIGNED)

具体内容如下

    LOCAL_PATH := $(call my-dir)
    ##############################
    include $(CLEAR_VARS)
     
    LOCAL_MODULE := app
    LOCAL_SRC_FILES := app.apk
    LOCAL_MODULE_CLASS := APPS
    LOCAL_MODULE_SUFFIX := .apk
    LOCAL_BUILT_MODULE_STEM := package.apk
    LOCAL_CERTIFICATE := platform
    LOCAL_PRIVILEGED_MODULE := true
     
    include $(BUILD_PREBUILT)

核心是下面这句话,意思为签署当前的应用名称,实际上也就是用platform.pk8文件和platform.x509.pem来给改应用签名

LOCAL_CERTIFICATE := platform
 

2. 通过命令签名
java -jar signapk.jar platform.x509.pem platform.pk8 app.apk new.apk
可能会遇到错误,但是改方法肯定是可行的,遇到问题欢迎留言一起解决~~

你可能感兴趣的:([Android]从入门到精通)