Android APP签名和用户UID
来源:互联网 发布:修改linux运行级别 编辑:程序博客网 时间:2024/04/29 20:22
Android APP签名除了能够声明发布者的身份,另外还有一下两个作用
1.使用一些特殊的key签名,可以获取到不同的资源
android 的为我们提供了这4种key的测试key,他们位于android\build\target\product\security
我们已系统的platform 为例
在security目录下
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
该命令会生成platform.pem文件
openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name androiddebugkey
该命令生成一个数据证书platform.p12
keytool -importkeystore -deststorepass android -destkeystore ./platform.jks -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepassandroid
该命令生成我们需要的keystore文件
2.APP签名后,如果其他发布者使用相同名称的发布包由于签名不一样,该APK是无法覆盖你的APP的
下面介绍用android stdio为APP生成keystore
在开发工具上直接将APP安装到设备上是,开发工具会为APP签入一个DebugKey,但是当我们要正式发布一个APP时,必须要为该APP签入合适的签名,该签名主要用于声明作者身份,表明该APP是可信任的。
系统不会安装一个未签名的APP,签名证书不需要授权,APP开发者普遍都使用自己的证书签名,如开发者可以使用Android Stdio为自己的APP签名:
1.step 1
2.step 2
这里需要使用java SDK中的keytool命令
keytool -genkey -alias wiwide -keypass wiwide2016 -keyalg RSA -keysize 1024 -validity 365 -keystore c:\key\jimmy.keystore -storepass 123456 -dname CN=wiwide
在对话框中输入生成的keystore文件所在的目录,以及别名和秘钥
UID
今天编译调试一个APP的时候发现andio Stduio报SHARED_USER_INCOMPATIBLE的错误
研究了一下发现在AndroidManifest.xml中,将sharedUserId声明成了system的,临时把这个关掉就能调试了
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.wiwide.jiang.wiplussettings" android:sharedUserId="android.uid.system">
扩展了解一下sharedUserI
Android的每一个APP都会分配到一个自己的UID,前面说了android提供了四种key类型
在使用system类型的key时,还需要在android.mk中定义LOCAL_CERTIFICATE := platform这句表示该APP使用目标系统中的platform key就是上面提到的security目录中的platform.pk8和platform.x509.pem两个文件来签名,不过这样生成的程序只有在原始的Android系统或者是自己编译的系统中才可以用。如果需要在第三方的系统中使用,需要有第三方的KEY
- Android APP签名和用户UID
- Android 共享UID和签名
- Android权限之 共享UID和签名
- Android 权限 共享UID和签名
- Android权限之共享UID和签名
- Android权限之共享UID和签名
- Android权限共享UID和签名(转)
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- Android权限之三共享UID和签名
- android 打包App和签名
- UITextField 只能输入(限制输入)数字和"."
- RetrofitDemo
- AwesomeMenu使用
- 1. Two Sum
- PAT 1013. Battle Over Cities
- Android APP签名和用户UID
- JSP总结
- 威力加强版SQL随机数字和字母
- Java中如何把两个数组合并为一个
- Activiti 个人任务(三种指派方式)
- Android程序签名打包
- 利用MySQL的表实现树的构建以及优化
- pip matplotlib 安装出错
- Beijing Guards