欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決在eclipse中將android項目生成apk并且給apk簽名的實現(xiàn)方法詳解

 更新時間:2013年05月20日 18:14:37   作者:  
本篇文章是對在eclipse中將android項目生成apk并且給apk簽名的實現(xiàn)方法進行了詳細的分析介紹,需要的朋友參考下
生成apk最懶惰的方法是:
只要你運行過android項目,到工作目錄的bin文件夾下就能找到與項目同名的apk文件,這種apk默認是已經(jīng)使用debug用戶簽名的。
如果想要自己給apk簽名:
1.簽名的意義
為了保證每個應(yīng)用程序開發(fā)商合法ID,防止部分開放商可能通過使用相同的Package Name來混淆替換已經(jīng)安裝的程序,我們需要對我們發(fā)布的APK文件進行唯一簽名,保證我們每次發(fā)布的版本的一致性(如自動更新不會因為版本不一致而無法安裝)。
2.簽名的步驟
a.創(chuàng)建key
b.使用步驟a中產(chǎn)生的key對apk簽名
3.具體操作
方法一: 命令行下對apk簽名(原理)
創(chuàng)建key,需要用到keytool.exe (位于jdk1.6.0_24\jre\bin目錄下),使用產(chǎn)生的key對apk簽名用到的是jarsigner.exe (位于jdk1.6.0_24\bin目錄下),把上兩個軟件所在的目錄添加到環(huán)境變量path后,打開cmd輸入
D:\>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore/*說明:-genkey 產(chǎn)生密鑰       -alias demo.keystore 別名 demo.keystore       -keyalg RSA 使用RSA算法對簽名加密       -validity 40000 有效期限4000天       -keystore demo.keystore */D:\>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore/*說明:-verbose 輸出簽名的詳細信息       -keystore  demo.keystore 密鑰庫位置       -signedjar demor_signed.apk demo.apk demo.keystore 正式簽名,三個參數(shù)中依次為簽名后產(chǎn)生的文件demo_signed,要簽名的文件demo.apk和密鑰庫demo.keystore.*/
注意事項:android工程的bin目錄下的demo.apk默認是已經(jīng)使用debug用戶簽名的,所以不能使用上述步驟對此文件再次簽名。正確步驟應(yīng)該是:在工程點擊右鍵->Anroid Tools-Export Unsigned Application Package導(dǎo)出的apk采用上述步驟簽名。
方法二:使用Eclipse導(dǎo)出帶簽名的apk
Eclipse直接能導(dǎo)出帶簽名的最終apk,非常方便,推薦使用,步驟如下:
第一步:導(dǎo)出。


第二步:創(chuàng)建密鑰庫keystore,輸入密鑰庫導(dǎo)出位置和密碼,記住密碼,下次Use existing keystore會用到。


第三步:填寫密鑰庫信息,填寫一些apk文件的密碼,使用期限和組織單位的信息。


第四步:生成帶簽名的apk文件,到此就結(jié)束了。


第五步:如果下次發(fā)布版本的時候,使用前面生成的keystore再簽名。

 

第六步:Next,Next,結(jié)束!
方法三:使用IntelliJ IDEA導(dǎo)出帶簽名的apk
方法步驟基本和Eclipse相同,大概操作路徑是:菜單Tools->Andrdoid->Export signed apk。
4.簽名之后,用zipalign(壓縮對齊)優(yōu)化你的APK文件。
未簽名的apk不能使用,也不能優(yōu)化。簽名之后的apk谷歌推薦使用zipalign.exe(位于android-sdk-windows\tools目錄下)工具對其優(yōu)化:
D:\>zipalign -v 4 demo_signed.apk final.apk
如上,zipalign能夠使apk文件中未壓縮的數(shù)據(jù)在4個字節(jié)邊界上對齊(4個字節(jié)是一個性能很好的值),這樣android系統(tǒng)就可以使用mmap()(請自行查閱這個函數(shù)的用途)函數(shù)讀取文件,可以在讀取資源上獲得較高的性能,
PS:1.在4個字節(jié)邊界上對齊的意思就是,一般來說,是指編譯器吧4個字節(jié)作為一個單位來進行讀取的結(jié)果,這樣的話,CPU能夠?qū)ψ兞窟M行高效、快速的訪問(較之前不對齊)。
2.對齊的根源:android系統(tǒng)中的Davlik虛擬機使用自己專有的格式DEX,DEX的結(jié)構(gòu)是緊湊的,為了讓運行時的性能更好,可以進一步用"對齊"進一步優(yōu)化,但是大小一般會有所增加。
5.簽名對你的App的影響。
你不可能只做一個APP,你可能有一個宏偉的戰(zhàn)略工程,想要在生活,服務(wù),游戲,系統(tǒng)各個領(lǐng)域都想插足的話,你不可能只做一個APP,谷歌建議你把你所有的APP都使用同一個簽名證書。
使用你自己的同一個簽名證書,就沒有人能夠覆蓋你的應(yīng)用程序,即使包名相同,所以影響有:
1) App升級。 使用相同簽名的升級軟件可以正常覆蓋老版本的軟件,否則系統(tǒng)比較發(fā)現(xiàn)新版本的簽名證書和老版本的簽名證書不一致,不會允許新版本安裝成功的。
2) App模塊化。android系統(tǒng)允許具有相同的App運行在同一個進程中,如果運行在同一個進程中,則他們相當(dāng)于同一個App,但是你可以單獨對他們升級更新,這是一種App級別的模塊化思路。
3) 允許代碼和數(shù)據(jù)共享。android中提供了一個基于簽名的Permission標(biāo)簽。通過允許的設(shè)置,我們可以實現(xiàn)對不同App之間的訪問和共享,如下:
AndroidManifest.xml:<permission android:protectionLevel="normal" />
其中protectionLevel標(biāo)簽有4種值:normal(缺省值),dangerous, signature,signatureOrSystem。簡單來說,normal是低風(fēng)險的,所有的App不能訪問和共享此App。dangerous是高風(fēng)險的,所有的App都能訪問和共享此App。signature是指具有相同簽名的App可以訪問和共享此App。signatureOrSystem是指系統(tǒng)image中App和具有相同簽名的App可以訪問和共享此App,谷歌建議不要使用這個選項,因為簽名就足夠了,一般這個許可會被用在在一個image中需要共享一些特定的功能的情況下。
  

相關(guān)文章

  • Android實現(xiàn)粒子漩渦動畫

    Android實現(xiàn)粒子漩渦動畫

    粒子動畫經(jīng)常用于大畫幅的渲染效果,實際上難度并不高,但是在使用粒子動畫時,必須要遵循的一些要素,起點,矢量速度和符合運動學(xué)公式等,文中有詳細的代碼示例供大家參考,具有一定的參考價值,需要的朋友可以參考下
    2024-01-01
  • Android Parcelable接口使用方法詳解

    Android Parcelable接口使用方法詳解

    這篇文章主要介紹了 Android Parcelable接口使用方法詳解的相關(guān)資料,實現(xiàn)Parcelable就是為了進行序列化,需要的朋友可以參考下
    2017-08-08
  • Android 啟動另一個App/apk中的Activity實現(xiàn)代碼

    Android 啟動另一個App/apk中的Activity實現(xiàn)代碼

    這篇文章主要介紹了Android 啟動另一個App/apk中的Activity實現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • Android動態(tài)使用VectorDrawable過程詳解

    Android動態(tài)使用VectorDrawable過程詳解

    這篇文章主要介紹了Android動態(tài)使用VectorDrawable過程,2014年6月26日的I/O 2014開發(fā)者大會上谷歌正式推出了Android L,它帶來了全新的設(shè)計語言Material Design,新的API也提供了這個類VectorDrawable
    2023-02-02
  • Android實現(xiàn)可收縮和擴展的TextView

    Android實現(xiàn)可收縮和擴展的TextView

    這篇文章主要為大家詳細介紹了Android實現(xiàn)可收縮和擴展的TextView,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • flutter FadeTransition實現(xiàn)透明度漸變動畫

    flutter FadeTransition實現(xiàn)透明度漸變動畫

    這篇文章主要為大家詳細介紹了flutter FadeTransition實現(xiàn)透明度漸變動畫,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • SimpleCommand框架ImageLoader API詳解(三)

    SimpleCommand框架ImageLoader API詳解(三)

    這篇文章主要為大家詳細介紹了SimpleCommand框架ImageLoader API,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Android實現(xiàn)圓形菜單懸浮窗

    Android實現(xiàn)圓形菜單懸浮窗

    這篇文章主要為大家詳細介紹了Android實現(xiàn)圓形菜單懸浮窗,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Android Textview實現(xiàn)顏色漸變滾動效果

    Android Textview實現(xiàn)顏色漸變滾動效果

    這篇文章主要為大家詳細介紹了Android Textview實現(xiàn)顏色漸變滾動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Android消息通知Notification常用方法(發(fā)送消息和接收消息)

    Android消息通知Notification常用方法(發(fā)送消息和接收消息)

    最近在做消息通知類Notification的相關(guān)業(yè)務(wù),利用閑暇時間總結(jié)一下,主要分為兩部分來記錄:發(fā)送消息和接收消息,對Android消息通知相關(guān)知識感興趣的朋友一起看看吧
    2024-02-02

最新評論