詳解Android Studio正式簽名進(jìn)行調(diào)試的實現(xiàn)步驟
詳解Android Studio正式簽名進(jìn)行調(diào)試的實現(xiàn)步驟
在Android Studio中,可以使用Gradle進(jìn)行打包時自動簽名。其實Android Studio默認(rèn)會給調(diào)試應(yīng)用加上Debug簽名,但有時候調(diào)一些第三方SDK時,需要正式簽名才能調(diào)起來,所以接下來分享一下使用Gradle自動簽名的方法。
一、創(chuàng)建簽名文件
打開AS,選擇Build->Generate Signed APK,選擇要打包的項目,點擊Next,再點擊Create new...創(chuàng)建簽名文件

填寫簽名文件響應(yīng)信息,如下所示,Password、Key-Alias、Key-Password這三個值需要記住,然后點擊OK,完成創(chuàng)建。

完成之后,在相應(yīng)路徑生成一個jks簽名文件。如果選擇手動再進(jìn)行打包,就可以選擇該簽名文件,然后對應(yīng)填入密碼與別名,進(jìn)行簽名,也可以。

二、配置Gradle自動打包
拷貝簽名文件到主工程根目錄,打開主工程的build.gradle文件,在android節(jié)點下,增加以下內(nèi)容:
signingConfigs {
release {
storeFile file('keystore.jks')
storePassword '123456'
keyAlias 'yyh'
keyPassword '123456'
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
signingConfig signingConfigs.release
}
debug {
signingConfig signingConfigs.release
}
}
storeFile file:簽名文件,如果放在其他路徑,需要對應(yīng)修改
storePassword:密碼(剛才填的第一個密碼)
keyAlias:別名
keyPassword:別名密碼
然后重新build一下工程,展開右邊欄Gradle選項卡,如下所示:

assembleRelease,即為正式簽名。雙擊assembleRelease,則會開始執(zhí)行命令:

執(zhí)行完畢可以看到BUILD SUCCESSFUL,說明正式簽名打包成功了。展開工程的build文件夾,可發(fā)現(xiàn)有app-release.apk,即為正式版本。

下次直接run起來的時候,就帶正式簽名了。這可比手動簽名省事多啦~~
當(dāng)然,為了提高安全性,我們還可以把那四個屬性作為變量配置在主工程的gradle.propreties,然后在build.gradle引用變量就可以了。如下:


這樣也能起到同樣的效果。
三、應(yīng)用程序簽名的意義
(1)保障開發(fā)者的合法權(quán)益
在我們對應(yīng)用程序進(jìn)行打包簽名后,即表示此應(yīng)用程序是簽名人或機(jī)構(gòu)所開發(fā)的,對此應(yīng)用程序具有所有權(quán)。
(2)預(yù)防應(yīng)用程序替換
應(yīng)用程序簽名可以防止部分人通過使用相同的Package Name來混淆替換已經(jīng)安裝的程序,從而出現(xiàn)一些惡意篡改。APK如果使用一個key簽名,發(fā)布時另一個key簽名的文件將無法安裝或覆蓋老的版本,這樣可以防止你已安裝的應(yīng)用被惡意的第三方覆蓋或替換掉。實際上就是一種標(biāo)識。
(3)保證應(yīng)用程序版本的一致性
一般應(yīng)用程序都會有更新,即版本的升級。如果應(yīng)用程序的簽名不一致,是無法進(jìn)行更新替代的。所以應(yīng)用程序的簽名是保證當(dāng)前應(yīng)用程序順利進(jìn)行更新安裝的前提。
(4)可以通過權(quán)限(permission)的方式在多個程序間共享數(shù)據(jù)和代碼
Android提供了基于數(shù)字證書的權(quán)限賦予機(jī)制,應(yīng)用程序可以和其他的程序共享概功能或者數(shù)據(jù)給那那些與自己擁有相同數(shù)字證書的程序。如果某個權(quán)限(permission)的protectionLevel是signature,則這個權(quán)限就只能授予那些跟該權(quán)限所在的包擁有同一個數(shù)字證書的程序。另一方面,Android系統(tǒng)允許擁有同一個數(shù)字簽名的程序運(yùn)行在一個進(jìn)程中,Android程序會將他們視為同一個程序。所以開發(fā)者可以將自己的程序分模塊開發(fā),而用戶只需要在需要的時候下載適當(dāng)?shù)哪K。
以上就是Android Studio正式簽名進(jìn)行調(diào)試的實現(xiàn)步驟的講解,如何大家有什么疑問可以留言討論!感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Android實現(xiàn)新增及編輯聯(lián)系人的方法
這篇文章主要介紹了Android實現(xiàn)新增及編輯聯(lián)系人的方法,是Android應(yīng)用開發(fā)常見的功能,需要的朋友可以參考下2014-07-07
Android 將 android view 的位置設(shè)為右下角的解決方法
Android 將 android view 的位置設(shè)為右下角的解決方法,需要的朋友可以參考一下2013-05-05
Android使用DisplayManager創(chuàng)建虛擬屏流程及原理解析
這篇文章主要介紹了Android使用DisplayManager創(chuàng)建虛擬屏流程及原理解析,DisplayManager提供了createVirtualDisplay接口,用于創(chuàng)建虛擬屏,虛擬屏可以把屏幕分出不同的區(qū)域,需要的朋友可以參考下2024-05-05
android 關(guān)于webview 加載h5網(wǎng)頁開啟定位的方法
今天小編就為大家分享一篇android 關(guān)于webview 加載h5網(wǎng)頁開啟定位的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
Android 開機(jī)自啟動Service實現(xiàn)詳解
這篇文章主要為大家介紹了Android 開機(jī)自啟動Service實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
android中AutoCompleteTextView的簡單用法(實現(xiàn)搜索歷史)
本篇文章主要介紹了android中AutoCompleteTextView的簡單用法(自動提示),有需要的可以了解一下。2016-11-11

