Android 生成系统APP

Android 生成系统签名的KeyStore

应用想要获取系统权限的话就必须要有系统签名,但是在开发一个系统的时候,为了系统的安全性,往往会去改变系统的签名。我们都知道通过platform.pk8 platform.x509.pem和signapk.jar可以对应用进行签名操作,但是这样很麻烦,而且也没办法使用Eclipse中的调试操作了,最简单的方式还是生成keystore然后放在Eclipse里,这样每次编译生成的APK就会自动签上名,方便许多。

下面来简单讲讲如何生成对应系统的系统签名:

1.android 源码目录build\target\product\security 取platform.pk8 platform.x509.pem放到一个目录下

2 openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt     //生成shared.priv.pem

3 openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name androiddebugkey    //生成pkcs12

Enter Export Password: (输入密码android,默认是android,如是自己制作的key,输入对应的密码)
Verifying - Enter Export Password:(输入密码android)

4 生成debug.keystore

keytool -importkeystore -deststorepass android -destkeypass android -destkeystore debug.keystore -srckeystore shared.pk12 -srcstoretype PKCS12 -srcstorepass android -alias androiddebugkey

5.eclipse 的Windows/Preferences/Android/Build中设置"Custom debug keystore"为刚才生成的keystore即可 直接使用apk,run调试即可,就不用再去用signapk.jar,如java -jar signapk.jar platform.x509.pem platform.pk8 *.apk **.apk

在manifest加如下代码:
   <manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.xuzhitech.remote.server"
    android:versionCode="1"
    android:versionName="1.0"
    android:sharedUserId="android.uid.system" >
加上这一代码,需要在源码里面编译才能生效,添加Android.mk文件:
LOCAL_PATH := $(call my-dir)


include $(CLEAR_VARS)






LOCAL_MODULE_TAGS := optional






LOCAL_SRC_FILES := $(call all-subdir-java-files)






LOCAL_PACKAGE_NAME := RemoteAndroidServer


LOCAL_CERTIFICATE := platform


#LOCAL_CERTIFICATE := share






LOCAL_OVERRIDES_PACKAGES := Home


include $(BUILD_PACKAGE)
这里的 LOCAL_CERTIFICATE 要使用platform编译,而不是share编译。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值