編輯:Android開發教程
Android應用程序簽名相關的理論知識包括:什麼是簽名、為什麼要給應用程序簽名、如何給應用程序簽名等。
1、什 麼是簽名?
如果這個問題不是放在Android開發中來問,如果是放在一個普通的版塊,我想大家都知道簽名的含義。可往往就 是將一些生活中常用的術語放在計算機這種專業領域,大家就開始迷惑了。計算機所做的事情,或者說編程語言所做的事情,不 正是在盡可能地模擬現實嗎?所以,計算機中所說的簽名和生活中所說的簽名在本質上是一樣的,它所起到的作用也是一致的!
2、為什麼要給Android應用程序簽名?
如果只能用一句簡單的話語來回答這個問題的話,我會說:“這是 Android系統所要求的”。
Android系統要求每一個Android應用程序必須要經過數字簽名才能夠安裝到系統中,也就是說如果 一個Android應用程序沒有經過數字簽名,是沒有辦法安裝到系統中的!Android通過數字簽名來標識應用程序的作者和在應用程 序之間建立信任關系,不是用來決定最終用戶可以安裝哪些應用程序。這個數字簽名由應用程序的作者完成,並不需要權威的數 字證書簽名機構認證,它只是用來讓應用程序包自我認證的。
3、為什麼我開發的Android應用程序沒有做什麼簽名也能 在模擬器和手機上運行?
你沒有給Android應用程序簽名並不代表Android應用程序沒有被簽名。為了方便我們開發調試程序 ,ADT會自動的使用debug密鑰為應用程序簽名。debug密鑰?它在哪?debug密鑰是一個名為debug.keystore的文件,它的位置:
Ubuntu: ~/.android/debug.keystore (win7: c:/user/.Android/debug.keystore; xp: C:/Documents and Settings/user/.Android/debug.keystore)
“user”對應於你自己的windows操作系統用戶名,這也就意味著,如果我們想 擁有自己的簽名,而不是讓ADT幫我們簽名的話,我們也要有一個屬於自己的密鑰文件(*.keystore)。
4、Android應用 程序簽名步驟
1)准備工作
apk的簽名工作可以通過兩種方式來完成:
1)通過ADT提供的圖形化界面完成apk簽名;
右鍵項目——》 Android Tools ——》Export Signed Application Package... ——》 打開圖形界面
2)完全通過 shell/dos命令來完成apk簽名
我比較喜歡第2)種方式,所以下面將講解如何通過命令的方式完成apk簽名。
給apk簽名一 共要用到3個工具,或者說3個命令,分別是:keytool、 jarsigner、 zipalign,下面是對這3個工具的簡單介紹:
1) keytool:生成數字證書,即密鑰,也就是上面說到的擴展名為.keystore的那類文件;
2)jarsigner:使用數字證書給apk文 件簽名;
3)zipalign:對簽名後的apk進行優化,提高與Android系統交互的效率(Android SDK1.6版本開始包含此工具)
從這3個工具的作用也可以看出,這3個工具的使用順序。通常我們自己所開發的所有應用程序,都是使用同樣的簽名,即使用同 一個數字證書,這就意味著:如果你是第一次做Android應用程序簽名,上面的3個工具都將用到;但如果你已經有數字證書了, 以後再給其它apk簽名時,只需要用到jarsigner和zipalign就可以完成。
為了方便使用上面3個命令,首先需要將上面3個工 具所在路徑添加到環境變量path中(我說的是為了方便使用,沒有說必須要這麼做)。怎麼配置環境變量請參見我先前的博客( Windows 或 Ubuntu),這裡需要說一下這3個工具默認所在的路徑:
1)keytool:該工具位於jdk安裝路徑的bin目錄下;
2)jarsigner:該工具位於jdk安裝路徑的bin目錄下;
3)zipalign:該工具位於Android-sdk-windows/tools/目錄下
不知道大家是否注意到keytool和jarsigner兩個工具是jdk自帶的,也就意味著生成數字證書和文件簽名不是Android的專利;另 外從字面上理解jarsigner也能猜得出該工具主要是用來給jar文件簽名的。
年前研究了一下Android如何實現無線互傳的功能,寫了個小demo,最近無事,遂整理一下,與各位共享。前期調研發現,Android想要實現無線互傳有以下幾種技術:1,B
bundle.putParcelable可以實現傳遞對象,但是這個對象的類必須實現Parcelable接口才能夠使用。下面是一個簡單的在Activity之間傳遞對象的例子
上篇介紹了使用Animation實現3D動畫旋轉翻頁效果,現在介紹圖片倒影實現,先看效果圖本示例主要通過自定義Gallery和ImageAdapter(繼承自BaseAd
IBM Rational Test Workbench(簡稱 RTW)是 IBM Rational 的統一的測試工具集,包括功能測試、性能 測試、接口 SOA 測試等模塊