欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

android打包簽名,android app簽名包原理

如何利用Eclipse工具打包簽名AndroidApk文件

用eclipse軟件打包app安卓客戶端免費下載

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網站制作、成都網站建設、外貿營銷網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯(lián)網時代的金臺網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!

鏈接:

提取碼:7a4n

Eclipse 是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發(fā)環(huán)境。幸運的是,Eclipse 附帶了一個標準的插件集,包括Java開發(fā)工具(Java Development Kit,JDK)。

Android打包流程

官方詳細:

ps:打包前做好config.xml配置如包名

一、添加android平臺

添加之后,在項目目錄的platforms下會生成一個android文件夾。

二、cordova編譯應用

使用build命令編譯應用的發(fā)布版本,這個過程需要你的android sdk和環(huán)境變量、java jdk和環(huán)境變量、android的gradle配置沒有錯誤。

編譯成功之后,在項目路徑platforms/android/build/outputs/apk/android-release-unsigned.apk未簽名文件,這個時候的apk還不能被安裝到手機上。

三、生成簽名文件

輸入的密碼要記住,其他姓名地區(qū)等信息隨便填吧,最好還是記住,成功之后在主目錄下就生成了 jhy-release-key.keystore 文件,命令中jhy-release-key.keystore是生成文件的名字, alias_jhy 是別名,隨便起但是要記住,一會簽名要用到,其他信息如加密、有效日期等就不說了,無需改動。

生成后會提示:

JKS 密鑰庫使用專用格式。建議使用 "keytool -importkeystore -srckeystore jhy-release-key.jks -destkeystore jhy-release-key.jks -deststoretype pkcs12" 遷移到行業(yè)標準格式 PKCS12。

執(zhí)行命令:

執(zhí)行結果: Warning: 已將 "jhy-release-key.jks" 遷移到 Non JKS/JCEKS。將 JKS 密鑰庫作為 "jhy-release-key.jks.old" 進行了備份。

四、簽名應用文件

把在第二步生成的android-release-unsigned.apk拷貝到與生成的jhy-release-key.jks同一目錄下,也就是項目的主目錄下,執(zhí)行命令:

輸入簽名文件的密碼,成功之后主目錄下的android-release-unsigned.apk就被簽名成功了,會比原來未被簽名的apk文件大一點,能夠安裝到手機或android虛擬機上了。

簽名完成后會提示沒有時間戳,忽略即可

檢測是否簽名成功:

也可用以下命令簽名并生成新apk文件

Android中APK簽名工具之jarsigner和apksigner詳解

轉自

一.工具介紹

jarsigner是JDK提供的針對jar包簽名的通用工具,

位于JDK/bin/jarsigner.exe

apksigner是Google官方提供的針對Android apk簽名及驗證的專用工具,

位于Android SDK/build-tools/SDK版本/apksigner.bat

不管是apk包,還是jar包,本質都是zip格式的壓縮包,所以它們的簽名過程都差不多(僅限V1簽名),

以上兩個工具都可以對Android apk包進行簽名.

1.V1和V2簽名的區(qū)別

在Android Studio中點擊菜單 Build-Generate signed apk... 打包簽名有兩種簽名選項 V1(Jar Signature) V2(Full APK Signature),

從Android 7.0開始, 谷歌增加新簽名方案 V2 Scheme (APK Signature);

但Android 7.0以下版本, 只能用舊簽名方案 V1 scheme (JAR signing)

V1簽名:

V2簽名:

V2簽名優(yōu)點很明顯:

注意: apksigner工具默認同時使用V1和V2簽名,以兼容Android 7.0以下版本

2.zipalign和V2簽名

位于Android SDK/build-tools/SDK版本/zipalign.exe

zipalign 是對zip包對齊的工具,使APK包內未壓縮的數(shù)據有序排列對齊,從而減少APP運行時內存消耗

zipalign -v 4 in.apk out.apk //4字節(jié)對齊優(yōu)化

zipalign -c -v 4 in.apk //檢查APK是否對齊

zipalign可以在V1簽名后執(zhí)行

但zipalign不能在V2簽名后執(zhí)行,只能在V2簽名之前執(zhí)行!!!

二.簽名步驟

1.生成密鑰對(已有密鑰庫,可忽略)

Android Studio在Debug時,對App簽名都會使用一個默認的密鑰庫:

1.生成密鑰對

進入JDK/bin, 輸入命令

參數(shù):

提示: 可重復使用此條命令,在同一密鑰庫中創(chuàng)建多條密鑰對

例如: 在debug.keystore中新增一對密鑰,別名是release

keytool -genkeypair -keystore debug.keystore -alias release -validity 30000

2.查看密鑰庫

進入JDK/bin, 輸入命令

keytool -list -v -keystore 密鑰庫名

參數(shù):

例如:

keytool -list -v -keystore debug.keystore

現(xiàn)在debug.keystore密鑰庫中有兩對密鑰, 別名分別是androiddebugkey release

2.簽名

1.方法一(jarsigner,只支持V1簽名)

進入JDK/bin, 輸入命令

從JDK7開始, jarsigner默認算法是SHA256, 但Android 4.2以下不支持該算法,

所以需要修改算法, 添加參數(shù) -digestalg SHA1 -sigalg SHA1withRSA

參數(shù):

例如:

用JDK7及以上jarsigner簽名,不支持Android 4.2 以下

jarsigner -keystore debug.keystore MyApp.apk androiddebugkey

用JDK7及以上jarsigner簽名,兼容Android 4.2 以下

jarsigner -keystore debug.keystore -digestalg SHA1 -sigalg SHA1withRSA MyApp.apk androiddebugkey

2.方法二(apksigner,默認同時使用V1和V2簽名)

進入Android SDK/build-tools/SDK版本, 輸入命令

若密鑰庫中有多個密鑰對,則必須指定密鑰別名

禁用V2簽名

apksigner sign --v2-signing-enabled false --ks 密鑰庫名 xxx.apk

參數(shù):

例如:

在debug.keystore密鑰庫只有一個密鑰對

apksigner sign --ks debug.keystore MyApp.apk

在debug.keystore密鑰庫中有多個密鑰對,所以必須指定密鑰別名

apksigner sign --ks debug.keystore --ks-key-alias androiddebugkey MyApp.apk

3.簽名驗證

1.方法一(keytool,只支持V1簽名校驗)

進入JDK/bin, 輸入命令

keytool -printcert -jarfile MyApp.apk (顯示簽名證書信息)

參數(shù):

2.方法二(apksigner,支持V1和V2簽名校驗)

進入Android SDK/build-tools/SDK版本, 輸入命令

apksigner verify -v --print-certs xxx.apk

參數(shù):

例如:

apksigner verify -v MyApp.apk

androidstudio項目簽名打包生成apk出錯整理

本人由于一些誤操作接觸到打包文件的問題,故作此文避免再次踩坑。

1.入口:build-generate signed bundle/APK,打開后如下圖1.1:

2.選中apk打包,進入next:

3.選擇打包類型:

4.箭頭所指即為生成的混淆+簽名后的打包apk文件。(*簽名文件不可以隨便更改,如果有申請第三方的功能,都需要這個簽名文件去檢驗的,比如說集成了微信支付,我們換簽名文件的話,微信那邊就會檢驗不通過)

5.本文重點并非上述步驟,而是我自己重新生成了一個密鑰后,打包文件變成了.aab后綴文件。于是我想研究下它的打包過程和原理:

5.1在我們的build.gradle中可以更新打包文件版本號名稱(自己配一下):

5.2簽名文件會在此處進行對應生成信息:

5.3當然,你的項目文件也會對應生成相應的簽名文件,例如我此處的文件為yoocarjks.jks:

5.4自己配一下打包生成文件的命名:

以上over

6.*問題點:

6.1.簽名文件生成的亂碼是些啥?

6.2.由于我當時把項目扔垃圾桶了,還有些文件并沒有搞清楚是干嘛的,如下圖:

buildoutputcleanuo.lock/executionhistory.bin/executionhistory.lock/filehashes.bin/filehashes.lock/outputfiles.bin/xxx.app.iml這些文件分別干嘛的,從包名看像是打包生成的文件。

作此文激勵下自己空了去學習查閱下,若有知道的小伙伴歡迎留言分享~此文會繼續(xù)追更~

7.1關于xxx.app.iml看到一篇不錯的出錯解決方案:

設計原理如下:

這個文件,后續(xù)遇到問題我再深入了解下

如何產生android 打包簽名文件

默認Android Studio簽名生成apk文件或不簽名的apk文件點擊“Build——Build APK”生成默認簽名和默認不簽名的兩種文件 點擊“Build——General Signed apk”指定自定義簽名文件后,生成發(fā)布版本的簽名文件,如果沒有簽名文件,先創(chuàng)建一個

android apk 打包只能簽名v1或v2

我們平常打包的時候,都是自動選擇v1、v2同時簽名如下圖:

但是有些自己不熟的項目你即使選擇了這兩個選項,但是你打出來的apk還是會出現(xiàn)v1沒簽上或者v2沒簽上的情況;

這里我就不過多表述v1 、v2 、v3,簽名的詳情解釋啦!有心的看客自己baidu或google或看api吧(一搜一大把)!

這里我遇到的情況就是在當前項目中的最低SDK版本設置成了24(minSdkVersion 24):

然后就導致了上述問題!

所以你只需要將最低sdk版本設置低于24版本(如23,我一般做項目都設置成17),那你打apk簽名的時候就不會只能簽名一個(v1、v2)啦!

網頁標題:android打包簽名,android app簽名包原理
網站地址:http://chinadenli.net/article38/dsisesp.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供自適應網站云服務器網站改版App設計外貿建站品牌網站設計

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網站建設