當前位置:首頁 » 安卓系統 » android程序打包

android程序打包

發布時間: 2022-09-14 14:46:11

❶ 如何將多個android應用程序打包到一個apk中

第一步,把普通的android project設置成庫項目
庫項目也是一個標準的android項目,因此你先創建一個普通的android項目。 這個項目可以起任何的名稱,任何的報名,設置其他需要設置的欄位等,如圖1所示。
接著把項目設置成庫項目,步驟如下
在Package Explorer中, 滑鼠右鍵項目文件夾,點擊 Properties.
在Properties 窗口, 選擇"Android" ,Library 屬性顯示在右下邊.
把"is Library" 單選框選擇上,再點擊 Apply.
點擊 OK 關閉Properties 窗口.
這時,這個項目就變成庫項目了。
當然,java項目也可以讓其變成一個庫項目,非常簡單,執行上面的四步。其他程序項目就可以引用庫項目了。
圖 1.使一個項目為庫項目
創建manifest文件
一個庫項目的manifest文件也和標準的android應用程序一樣,聲明所有共享的組件。
比如APIDemo中的TicTacToeLib 這個例子,庫項目聲明了Activity GameActivity:
<manifest>
...
<application>
...
<activity android:name="GameActivity" />
...
</application>
</manifest>

第二步 引用庫項目
如果你開發的應用程序想要包括庫項目中的代碼和資源,非常簡單,引用步驟如下

在Package Explorer中, 滑鼠右鍵項目文件夾,點擊 Properties.
在Properties 窗口, 選擇"Android" ,Library 屬性顯示在右下邊.
點擊Add ,打開了Project Selection 對話框.
從可用庫項目列表選擇一個項目,然後點擊 OK.
對話框關閉之後點擊 Apply (在Properties 窗口).
點擊 OK 關閉Properties 窗口.

完成以上六步,Eclipse 會重建項目,把庫項目中的內容包含進去。 如圖2所示
圖 2. 讓項目引用一個庫項目
如果你想增加多個庫項目的引用,使用up和down可以設置他們的相對的優先順序和合並順序。工具在合並引用的庫的時候順序是從低優先順序(列表的下面)到高優先順序(列表的上面)。 如果不只一個庫定義了相同的資源ID,這個工具選擇資源時會選擇高優先順序的資源。應用程序自身擁有最高的優先順序,自身的資源zThe application itself has highest priority and its resources are always used in preference to identical resource IDs defined in libraries.

在menifest文件中聲明庫中的組件
在manifest 文件中必須增加對在當前程序中用到的庫項目中的所有的組件 。比如,你必須聲明任何用到的 <activity>, <service>, <receiver>, <provider>等,<permission>, <uses-library>, 和其他類似的元素。
聲明庫項目中的組件時,必須使用包含包名的類全名。
在TicTacToeMain 例子中,聲明庫Activity GameActivity :

<manifest>
...
<application>
...
<activity android:name="com.example.android.tictactoe.library.GameActivity" />
...
</application>
</manifest>

For more information about the manifest file, see the documentation for AndroidManifest.xml.

❷ Android App打包是怎麼回事

Android App打包指的是將APP源碼壓縮成一個apk包的過程,具體步驟如下。

工具:eclipse

  1. 在eclipse中,工程上「右鍵」->導出。

  2. 讓選擇需要打包的工程,直接「Next」,到keystone頁面


  3. 根據自己的情況填寫,點擊「Next」,生成keystore,到下一頁面:

  4. 選擇APK文件生成的位置,點擊Finish,完成,把apk文件安裝到手機上運行看是否正常運行。至此,全部結束!

❸ android應用程序需要打包成什麼文件格式

打包成.apk格式,手機才能安裝

❹ 怎麼把Android工程打包成apk

你好
第一步,把普通的android project設置成庫項目
庫項目也是一個標準的android項目,因此你先創建一個普通的android項目。 這個項目可以起任何的名稱,任何的報名,設置其他需要設置的欄位等,如圖1所示。
接著把項目設置成庫項目,步驟如下
在Package Explorer中, 滑鼠右鍵項目文件夾,點擊 Properties.
在Properties 窗口, 選擇"Android" ,Library 屬性顯示在右下邊.
把"is Library" 單選框選擇上,再點擊 Apply.
點擊 OK 關閉Properties 窗口.
這時,這個項目就變成庫項目了。
當然,java項目也可以讓其變成一個庫項目,非常簡單,執行上面的四步。其他程序項目就可以引用庫項目了。
圖 1.使一個項目為庫項目
創建manifest文件
一個庫項目的manifest文件也和標準的android應用程序一樣,聲明所有共享的組件。
比如APIDemo中的TicTacToeLib 這個例子,庫項目聲明了Activity GameActivity:
<manifest>
...
<application>
...
<activity android:name="GameActivity" />
...
</application>
</manifest>

第二步 引用庫項目
如果你開發的應用程序想要包括庫項目中的代碼和資源,非常簡單,引用步驟如下

在Package Explorer中, 滑鼠右鍵項目文件夾,點擊 Properties.
在Properties 窗口, 選擇"Android" ,Library 屬性顯示在右下邊.
點擊Add ,打開了Project Selection 對話框.
從可用庫項目列表選擇一個項目,然後點擊 OK.
對話框關閉之後點擊 Apply (在Properties 窗口).
點擊 OK 關閉Properties 窗口.

完成以上六步,Eclipse 會重建項目,把庫項目中的內容包含進去。 如圖2所示
圖 2. 讓項目引用一個庫項目
如果你想增加多個庫項目的引用,使用up和down可以設置他們的相對的優先順序和合並順序。工具在合並引用的庫的時候順序是從低優先順序(列表的下面)到高優先順序(列表的上面)。 如果不只一個庫定義了相同的資源ID,這個工具選擇資源時會選擇高優先順序的資源。應用程序自身擁有最高的優先順序,自身的資源zThe application itself has highest priority and its resources are always used in preference to identical resource IDs defined in libraries.

在menifest文件中聲明庫中的組件
在manifest 文件中必須增加對在當前程序中用到的庫項目中的所有的組件 。比如,你必須聲明任何用到的 <activity>, <service>, <receiver>, <provider>等,<permission>, <uses-library>, 和其他類似的元素。
聲明庫項目中的組件時,必須使用包含包名的類全名。
在TicTacToeMain 例子中,聲明庫Activity GameActivity :

<manifest>
...
<application>
...
<activity android:name="com.example.android.tictactoe.library.GameActivity" />
...
</application>
</manifest>

For more information about the manifest file, see the documentation for AndroidManifest.xml.
望採納祝你好運

❺ Android 打包流程

打包後的apk是一個壓縮包,解壓之後,內容如下:

詳細可參考 apk簽名原理

無論我們怎麼配置gradle文件去自定義打包,但是都是要走上圖所畫的七個流程。七個深綠色的橢圓代表了七個不可或缺的打包步驟,並且每一個步驟都一個打包工具

所用到的工具:

zipalign 位元組對齊:

為什麼要以4位元組整數倍為起始偏移?

在文件對齊後, 就可以使用mmap來直接讀寫apk文件

mmap映射

上面涉及到的Android打包流程是以gradle task鏈的形式串聯起來的。
下面看一下常見的task



我可以想到的:

Transform API

https://www.jianshu.com/p/a134d00e81ab

https://www.jianshu.com/p/fffb81688dc5

❻ 如何打包android apk

做完一個Android項目之後,如何才能把項目發布到Internet上供別人使用呢?我們需要將自己的程序打包成Android安裝包文件--APK(Android Package),其後綴名為".apk"。將APK文件直接上傳到Android模擬器或Android手機中執行即可進行安裝。Android系統要求具有其開發者簽名的私人密鑰的應用程序才能夠被安裝。生成數字簽名以及打包項目成APK都可以採用命令行的方式,但是通過Eclipse中的向導我們會更加方便地完成整個流程,打包發布的過程非常簡單。下面以前面開發的"Hello World"為例,演示如何生成APK。
右鍵單擊項目名稱,選擇"Android Tools",再選擇"Export Signed Application Package…",如下圖所示。

進入左圖所示頁面,單擊"Next>"按鈕,進入如右圖所示窗口。

其中,Location為證書庫將要存放的位置,Password是證書庫的密碼。
打包程序時,系統要求使用數字證書。如果沒有數字證書,我們選擇"Create new keystore"新創建一個證書庫,單擊"Browse…"按鈕選擇證書庫將要保存的位置並填入信息,如左圖所示。單擊"Next>"按鈕,如右圖所示

❼ 如何將一個完整的Android工程打包成jar包

將一個完整的Android工程打包成jar包步驟:

1、右鍵工程--->Export

2、點擊Java--->JAR file---->Next如下圖

3、勾選src包即可,其他項不選

4、點擊finishi即可,在D盤就可以看到library的jar包

5、其他應用程序引用就可以

❽ Android的編譯打包流程詳解

下圖的是官網對於Android編譯打包流程的介紹。

官方的介紹非常籠統,簡而言之,其大致流程就是:
編譯-->DEX-->打包-->簽名和對齊

(好像什麼都沒Get到,有一種意猶未盡的感覺……)

來一張外國大神的圖片(註:這張圖少了簽名的步驟)

用文字解釋一下上圖的流程:

首先,我們整理一下編譯的輸入部分是什麼(圖中黃色部分):

接下來的步驟:

好了,編譯打包的詳細流程說完了,接下來我們看看是否能回答開篇的那些問題。

答:aapt工具對於每個資源文件生成了唯一的ID,這些ID保存在R.java文件中。如下是R.java文件的內容:

資源ID是一個4位元組的無符號整數,在R.java文件中用16進製表示。其中,最高的1位元組表示Package ID,次高1個位元組表示Type ID,最低2位元組表示Entry ID。

只有一個ID如何能引用到實際資源呢?實際上aapt工具還生成了一個文件resources.arsc,相當於一個資源索引表,或者你理解成一個map也行,map的key是資源ID,value是資源在apk文件中的路徑。resources.arsc裡面還有其他信息,這個就不多說了。

通過R.java文件和resources.arsc配合,就能引用到實際的資源文件。

答:第7步已經闡述了對齊所做的工作,為什麼要進行對齊,這是為了加快資源的訪問速度。如果每個資源的開始位置都是上一個資源之後的 4*n位元組,那麼訪問下一個資源就不用遍歷,直接跳到4*n位元組處判斷是不是一個新的資源即可。

如果舉例子,那麼對齊有點類似於資源數組化,數組的訪問速度當然比鏈錶快。

答:xml裡面都是各種字元,不利於快速遍歷。編譯成二進制文件,用數字替換各種符號,一方面能快速訪問,另一方面也能減少大小。

https://developer.android.com/studio/build/index.html
http://www.alittlemadness.com/2010/06/07/understanding-the-android-build-process/
http://blog.csdn.net/luoshengyang/article/details/8744683
https://stackoverflow.com/questions/6517151/how-does-the-mapping-between-android-resources-and-resources-id-work
http://www.jianshu.com/p/eaaddfe34d11

❾ Taro 打包apk步驟(Android 打包)

 taro版本2.2.13

       1、 把項目根目錄下的rn_temp文件夾復制到殼子根目錄(taro-native-shell)下,再把rn_temp文件夾下的index.js文件復制到殼子根目錄(taro-native-shell)下

        2、打開殼子根目錄下的index.js文件,修改「import App from './app.js';」為「import App from './rn_temp/app.js';」,修改「 import {name as appName} from './app.json';」為「 import {name as appName} from './rn_temp/app.json';」,如下圖

        3、終端進入殼子根目錄(taro-native-shell),執行命令

會在android/app/src/main/assets文件夾下生成index.android.bundle文件

        4、修改MainApplication中的getJSMainMoleName方法的返回值為「index.android.bundle」

        5、終端中cd進入到android目錄下,執行命令

        等運行完成

你就可以在taro-native-shell/android/app/build/outputs/apk/release中看到打包出來的apk包了

或者可以按照Android studio的方式進行打包也可以。

❿ Android APK打包流程備忘

APK文件的組成部分及apk打包流程是Android開發中的基礎知識點,做一個簡單的記錄。

apk文件是Android應用包文件格式,其本質是一個壓縮文件。將apk文件拖動到Android Studio中即可查看裡面的內容,如下圖:

從上圖中可以看到apk包里的幾個重要組成部分:

打包流程的經典流程圖如下:

其中七個橢圓形內容對應了打包流程中的七個重要步驟,也對應著打包中的七個重要工具,具體如下:

對上面七個重要的打包流程進一步說明。

aapt打包資源文件,生成R.java文件,resources.arsc等文件。

aapt在打包資源文件之前會檢測 AndroidManifest.xml 文件的合法性,對res目錄下的資源目錄進行掃描合法性,因此資源命名有問題時會在編譯階段就會直接報錯。

需要注意的是xml文件會被編譯為二進制的,因此我們並不能直接打開apk包中的xml文件。

AIDL是Android介面定義語言,是Android進程間通訊的一種實現方式。

此步驟中會對aidl文件進行處理,生成java文件。

通過javaCompiler對java文件進行編譯,生成class文件。

dx工具將class文件轉變為Android系統Dalvik虛擬機可執行的Dex文件。

將classes.dex,res文件夾等所有文件打包成apk文件。

生成APK包之後還需要進行簽名處理,Release簽名需要我們自己去進行配置。

常用的簽名方式有兩種:jarsigner和apksigner。

Zipalign是Android平台上APK文件對齊的整理工具,能夠對APK中未壓縮的數據進行4位元組對齊。

需要注意的是根據採用簽名方式的不同,對齊處理的先後順序有所區別。

APK打包流程備忘。

熱點內容
原力文件夾 發布:2025-01-09 05:51:44 瀏覽:125
php寫入文本 發布:2025-01-09 05:45:00 瀏覽:877
考研編程作品 發布:2025-01-09 05:35:00 瀏覽:332
安卓相冊哪個好看 發布:2025-01-09 05:16:01 瀏覽:982
java分析數據 發布:2025-01-09 05:16:00 瀏覽:853
視頻md5加密 發布:2025-01-09 05:08:59 瀏覽:926
xp系統文件夾加密 發布:2025-01-09 04:52:38 瀏覽:171
外部調用shell腳本內函數 發布:2025-01-09 04:49:14 瀏覽:256
java資料庫搜索 發布:2025-01-09 04:48:30 瀏覽:621
pythoninspect 發布:2025-01-09 04:42:12 瀏覽:413