Mac中对jsk文件做系统签名(静默安装)
本文于 1124 天之前发表,文中内容可能已经过时。
mac下注意设置全局环境变量
首先,检查你的默认shell是什么,echo $SHELL。
以前每个新用户的默认shell是/bin/bash,而新版本的macOS Catalina开始,新用户的默认shell改为了zsh
对于zsh,使用.zshrc
- 这里特别说明:网上很多资料设置环境变量都是针对.bash_profile文件配置的,这里其实根据shell命令实际情况来的
再检查终端中的便好配置,在通用中是否设置了特殊的shell
Android Studio配置系统签名
1.项目的AndroidManifest.xml配置文件增加 android:sharedUserId=”android.uid.system”
2.需要准备两个文件:
keytool-importkeypair
platform.x509.pem、platform.pk8(位于../build/target/product/security)可以向产商要平台签名3.使用生成的签名文件jks来生成系统签名
使用命令:./keytool-importkeypair -k [jks文件名] -p [jks的密码] -pk8 platform.pk8 -cert platform.x509.pem -alias [jks的别名]
这时候会生成一个新的签名文件,把新的jks文件替换掉
4.应用的build.gradle文件增加配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.cxq.signdemo"
minSdkVersion 19
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
signingConfigs {
release {
storeFile file("../signApk/SignDemo.jks")
storePassword '123456'
keyAlias 'SignDemo'
keyPassword '123456'
}
debug {
storeFile file("../signApk/SignDemo.jks")
storePassword '123456'
keyAlias 'SignDemo'
keyPassword '123456'
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
}5.直接运行AS的Run,安装的就是系统权限的应用。
参考
Android Studio自动生成带系统签名的apk
mac设置全局环境变量
在 Mac 上将 zsh 用作默认 Shell
让Android Studio支持系统签名(证书)