【App】android app签名获得系统权限,keystore制作

背景:

      签名应该有两种方式吧,

一种是java -Djava.library.path=. -jar signapk.jar platform.x509.pem platform.pk8 app-debug.apk app_signed.apk

第二种是
           生成keystore,然后配置在gradle里



--------------------
以前都是用第一种,AS编译生成.apk文件,然后用bat来签名

第二种应该比较方便,先生成keystore文件,然后在gradle里面配置



今天记录的是第二种。

所需要文件:

              build/target/product/security/platform.x509.pem

              build/target/product/security/platform.pk8

keytool-importkeypair下载路径:

                                                   https://github.com/getfatday/keytool-importkeypair

password: android

alias:  platform

然后生成的keystore我放在\StressTest\app,然后我这里文件路径直接写的slm756_keystore

            (工程下的app目录下,当然放在电脑哪里都可以,指定文件路径就行了)



---------

signingConfigs {
        sginconfig {
            keyAlias 'platform'
            keyPassword 'android'
            storeFile file('slm756_keystore')
            storePassword 'android'
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.sginconfig
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            signingConfig signingConfigs.sginconfig
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

 

然后我这里遇到了一个问题

在做机器重启的压力测试时,这个立即重启广播不允许发送.

 "Permission Denial: not allowed to send broadcast android.intent.action.REBOOT from pid=5331, uid=10076"

然后我修改了下AndroidManifest.xml

添加了android:sharedUserId="android.uid.system", 就可以重启了.

end ~

猜你喜欢

转载自blog.csdn.net/John_chaos/article/details/113978155