青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

life02

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  197 隨筆 :: 3 文章 :: 37 評論 :: 0 Trackbacks
http://blog.csdn.net/linghu_java/article/details/6701666
Andriod應用程序如果要在手機或模擬器上安裝,必須要有簽名! 

1.簽名的意義
  為了保證每個應用程序開發商合法ID,防止部分開放商可能通過使用相同的Package Name來混淆替換已經安裝的程序,我們需要對我們發布的APK文件進行唯一簽名,保證我們每次發布的版本的一致性(如自動更新不會因為版本不一致而無法安裝)。

2.簽名的步驟
  a.創建key
  b.使用步驟a中產生的key對apk簽名

3.具體操作

  方法一: 命令行下對apk簽名(原理)
  創建key,需要用到keytool.exe (位于jdk1.6.0_24jre\bin目錄下),使用產生的key對apk簽名用到的是jarsigner.exe (位于jdk1.6.0_24\bin目錄下),把上兩個軟件所在的目錄添加到環境變量path后,打開cmd輸入

         D:>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000
        -keystore demo.keystore
/*說明:-genkey 產生密鑰
-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 正式簽名,三個參數中
依次為簽名后產生的文件demo_signed,要簽名的文件demo.apk和密鑰庫demo.keystore.*/

  注意事項:android工程的bin目錄下的demo.apk默認是已經使用debug用戶簽名的,所以不能使用上述步驟對此文件再次簽名。 正確步驟應該是:在工程點擊右鍵->Anroid Tools-Export Unsigned Application Package導出的apk采用上述步驟簽名。

  方法二:使用Eclipse導出帶簽名的apk
  Eclipse直接能導出帶簽名的最終apk,非常方便,推薦使用,步驟如下:
  第一步:導出。
 
  第二步:創建密鑰庫keystore,輸入密鑰庫導出位置和密碼,記住密碼,下次Use existing keystore會用到。
 
  第三步:填寫密鑰庫信息,填寫一些apk文件的密碼,使用期限和組織單位的信息。

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

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


  第六步:下一步,下一步,然后就OK了!

  方法三:使用IntelliJ IDEA導出帶簽名的apk 
  
方法步驟基本和Eclipse相同,大概操作路徑是:菜單Tools->Andrdoid->Export signed apk。

4.簽名之后,用zipalign(壓縮對齊)優化你的APK文件。
  未簽名的apk不能使用,也不能優化。簽名之后的apk谷歌推薦使用zipalign.exe(位于android-sdk-windows ools目錄下)工具對其優化:

       D:>zipalign -v 4 demo_signed.apk final.apk

  如上,zipalign能夠使apk文件中未壓縮的數據在4個字節邊界上對齊(4個字節是一個性能很好的值),這樣android系統就可以使用mmap()(請自行查閱這個函數的用途)函數讀取文件,可以在讀取資源上獲得較高的性能,
  PS:1.在4個字節邊界上對齊的意思就是,一般來說,是指編譯器吧4個字節作為一個單位來進行讀取的結果,這樣的話,CPU能夠對變量進行高效、快速的訪問(較之前不對齊)。
          2.對齊的根源:android系統中的Davlik虛擬機使用自己專有的格式DEX,DEX的結構是緊湊的,為了讓運行時的性能更好,可以進一步用"對齊"進一步優化,但是大小一般會有所增加。

5.簽名對你的App的影響。
   你不可能只做一個APP,你可能有一個宏偉的戰略工程,想要在生活,服務,游戲,系統各個領域都想插足的話,你不可能只做一個APP,谷歌建議你把你所有的APP都使用同一個簽名證書。
   使用你自己的同一個簽名證書,就沒有人能夠覆蓋你的應用程序,即使包名相同,所以影響有:
  1) App升級。 使用相同簽名的升級軟件可以正常覆蓋老版本的軟件,否則系統比較發現新版本的簽名證書和老版本的簽名證書不一致,不會允許新版本安裝成功的。
  2) App模塊化。android系統允許具有相同的App運行在同一個進程中,如果運行在同一個進程中,則他們相當于同一個App,但是你可以單獨對他們升級更新,這是一種App級別的模塊化思路。
  3) 允許代碼和數據共享。android中提供了一個基于簽名的Permission標簽。通過允許的設置,我們可以實現對不同App之間的訪問和共享,如下:

  1. AndroidManifest.xml:<permission android:protectionLevel="normal" />  
        AndroidManifest.xml:<permission android:protectionLevel="normal" /> 
其中protectionLevel標簽有4種值:normal(缺省 值),dangerous, signature,signatureOrSystem。簡單來說,normal是低風險的,所有的App不能訪問和共享 此App。dangerous是高風險的,所有的App都能訪問和共享此App。signature是指具有相同簽名的App可以訪問和共享此App。 signatureOrSystem是指系統image中App和具有相同簽名的App可以訪問和共享此App,谷歌建議不要使用這個選項,因為簽名就足 夠了,一般這個許可會被用在在一個image中需要共享一些特定的功能的情況下。
posted on 2012-03-20 14:11 life02 閱讀(1570) 評論(0)  編輯 收藏 引用 所屬分類: Android開發
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品免费视频xxxx| 一区二区三区国产精品| 亚洲人成精品久久久久| 国产日产精品一区二区三区四区的观看方式| 欧美大片在线观看一区| 另类综合日韩欧美亚洲| 久久精品视频导航| 久久综合图片| 欧美精品一区二区三区在线播放| 亚洲男人的天堂在线| 亚洲特级毛片| 亚洲欧美国产视频| 久久久久久久一区二区三区| 久久精品一区二区三区不卡牛牛| 开心色5月久久精品| 免费在线观看一区二区| 欧美人与禽猛交乱配视频| 欧美性久久久| 韩国成人精品a∨在线观看| 亚洲黄色三级| 亚洲免费视频一区二区| 欧美在线播放| 亚洲国产片色| 亚洲美女免费视频| 亚洲免费婷婷| 久久午夜精品一区二区| 欧美日韩大片| 国产在线视频欧美| 亚洲美女视频在线观看| 午夜亚洲福利| 亚洲国产精品va在线观看黑人| 一本一本久久| 免费观看成人鲁鲁鲁鲁鲁视频 | 欧美日韩一区二区三区四区在线观看 | 久久中文精品| 欧美日韩成人一区| 一区在线播放视频| 一区二区三区欧美在线观看| 久久精品亚洲国产奇米99| 亚洲国产经典视频| 亚洲欧美综合国产精品一区| 欧美精彩视频一区二区三区| 国产亚洲一级| 亚洲欧美偷拍卡通变态| 亚洲精品网站在线播放gif| 欧美一区二区三区免费观看 | 欧美精品999| 尤物yw午夜国产精品视频| 久久久最新网址| 欧美日韩一区二区在线观看| 伊人春色精品| 久久精品伊人| 亚洲一区二区免费在线| 欧美日韩国产小视频在线观看| 国内外成人免费视频| 欧美在线免费播放| 亚洲一区在线播放| 国产精品美女久久久久久免费| 99re66热这里只有精品4| 亚洲精品在线视频| 欧美大片免费观看| 午夜精品免费| 国产精品成人在线| aa亚洲婷婷| 亚洲日本中文字幕| 欧美国产日韩一区二区三区| 最新亚洲视频| 亚洲第一黄网| 牛牛影视久久网| 亚洲国产精品久久久| 久久免费视频观看| 羞羞答答国产精品www一本| 国产精品日韩欧美一区| 亚洲欧美另类在线观看| 亚洲综合电影一区二区三区| 国产精品视频不卡| 亚洲女ⅴideoshd黑人| 一区二区福利| 国产美女精品免费电影| 欧美一区二区三区免费视频| 欧美一区二区日韩| 亚洲大片av| 亚洲国产专区| 国产精品mm| 欧美一区二视频| 久久福利影视| 亚洲精品国产系列| 一区二区久久久久久| 国产精品久久久久久亚洲调教| 午夜精品久久一牛影视| 久久久精品国产99久久精品芒果| 激情欧美丁香| 亚洲美女免费精品视频在线观看| 欧美四级在线| 免费观看30秒视频久久| 欧美不卡在线视频| 亚洲欧美国产一区二区三区| 欧美一区二区三区日韩| 亚洲国产婷婷综合在线精品| 日韩亚洲一区在线播放| 国产一区二区三区自拍| 亚洲电影自拍| 国产精品美女午夜av| 久久久综合网站| 欧美日韩免费观看一区=区三区| 欧美一区二区三区另类| 免费在线亚洲欧美| 性欧美暴力猛交另类hd| 欧美大片在线看免费观看| 香蕉久久a毛片| 欧美成在线视频| 久久国产精品免费一区| 欧美精品aa| 欧美大片在线观看| 国产亚洲精品久久久久久| 亚洲高清av| 国外视频精品毛片| 亚洲天堂男人| 一本久道久久综合狠狠爱| 香蕉免费一区二区三区在线观看 | 性久久久久久| 在线看欧美视频| 亚洲欧美日韩精品久久久久| 在线免费观看日韩欧美| 亚洲自拍偷拍视频| 亚洲午夜小视频| 免费的成人av| 久久亚洲国产精品日日av夜夜| 欧美黄色影院| 亚洲高清视频在线观看| 国产视频一区在线观看| 亚洲一区二区动漫| 亚洲午夜免费福利视频| 欧美国产免费| 欧美国产日本在线| 国产主播喷水一区二区| 亚洲欧美激情一区| 亚洲一区二区精品| 国产精品av免费在线观看| 亚洲精品系列| 亚洲视频欧美在线| 欧美黄色网络| 亚洲精品资源| 这里只有精品丝袜| 国产精品大片免费观看| 亚洲色图在线视频| 亚洲欧美精品伊人久久| 国产精品久久久久久久久免费桃花 | 日韩一级不卡| 欧美大片免费观看在线观看网站推荐 | 玉米视频成人免费看| 久久国产免费看| 久久综合国产精品| 韩日欧美一区二区| 久久久久久网站| 欧美激情精品久久久久久蜜臀 | 午夜视频久久久| 国产精品久久久久毛片软件| 亚洲综合日韩在线| 久久久久久久综合狠狠综合| 精久久久久久| 欧美电影美腿模特1979在线看| 亚洲精品久久视频| 亚洲免费在线视频| 国产偷自视频区视频一区二区| 久久精品一区二区国产| 亚洲高清视频一区| 亚洲在线观看视频| 黄色成人在线网址| 欧美日韩国产二区| 亚欧成人精品| 亚洲国产高清aⅴ视频| 一本色道久久综合亚洲精品按摩| 国产精品激情电影| 久久久久久久999精品视频| 最新成人在线| 久久精品在线| 亚洲夜间福利| 久久精品中文字幕一区| 国产精品亚洲网站| 久久国产精品免费一区| 亚洲精品看片| 免费看av成人| 亚洲影院高清在线| 亚洲国产精品精华液2区45| 欧美私人网站| 免费美女久久99| 欧美专区中文字幕| 亚洲调教视频在线观看| 免费观看久久久4p| 午夜欧美大尺度福利影院在线看| 91久久国产综合久久91精品网站| 国产精品美女久久久久久2018| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲视频国产视频| 亚洲第一页在线| 久久久噜噜噜久久人人看| 亚洲一区高清| 亚洲精品午夜精品| 狠狠色综合一区二区|