當前位置:首頁 » 安卓系統 » androidapk編譯

androidapk編譯

發布時間: 2022-09-24 03:16:30

⑴ android如何把apk的工程代碼放到源碼目錄下編譯

啥平台的,是原生的還是高通的還是mtk的?反正都類似,你需要一個Android.mk然後源碼需要整體new過。然後編譯的時候編譯到Android.mk所在目錄就可以了。反正我現在接觸mtk平台的,new代碼方法如下:1、首先到XXXXXX/L23_XXXXXXX_AN5.1_MT6735_65C_L1.MP3.V1.8.9_150503/android_mtk_6753_mp目錄下,使用如下命令./TmakeGionee
BFL7506A
-p
packages/apps/XXXXX(XXXXXX就是你apk代碼所存放的並且與Android.mk同級的目錄)。

⑵ 如何在Android源代碼環境下編譯生成apk

谷歌專門有個網站維護源碼的,用的是git工具,整個源碼下下來起碼3G以上,源碼裡面有很多mk文件。
你要是想要系統許可權,可以用一種工具,把你的apk包裡面的標識換成系統標識。我記得那個工具很小,只要用命令行運行下就行,不過你得找到相應的系統標識。

⑶ android studio怎麼編譯apk文件

Android Studio編譯出來的APK無法安裝如何解決?隨著Android8.0的發布,國內雖然沒上8.0但是7.0、7.1已經比較普遍了。Android Studio也做了不少更新。
但是有不少人發現,我更新了Android Studio,發現我的手機無法調試了?根本無法直接安裝調試,就算先生成APK,在安裝也總是說安裝失敗,或者解析包錯誤我該怎麼辦?
在這里我也不知道具體原因,反正我是遇到過幾次。有的情況,我的猜測是因為了更新了build tool不知道它加了什麼限制條件。因為在低版本沒出現問題,更新了它之後就出現了!
第一種情況:直接無法安裝,並出現:Failed to finalize session : INSTALL_FAILED_INTERNAL_ERROR
這種情況比較好解決,本身AS也有提示:關閉選項 File--> settings-> Istant Run
第二種情況:虛擬機可以安裝調試,發送到真機上無法安裝。甚至是提示安裝包解析失敗?
我經常遇到就是這個,有時候讓我們懷疑是不是在傳輸過程安裝包損壞了,還是手機出問題了。其實都不是,我還在真感覺是build tool版本導致的。
因為有一個解決方案是這樣的:
請修改 project 的biuld.gradle
classpath 'com.android.tools.build:gradle:2.3.3'
改為
classpath 'com.android.tools.build:gradle:2.2.0'以下
還有另一個解決方案:
我們平時習慣都是生成debug包進行安裝,造成這個原因就是因為他是debug包!我自己測試出來的,估摸是Android加了什麼條件,限制了debug包的安裝。生成release包就沒任何問題,親測。
第三種情況,APK在大多數設備上能運行,但是有的設備卻不能安裝?
親~請查看你配置文件中的最低支持的Android版本,你設置最低5.0安裝在4.4的機器當然不行了!
這就是目前我遇到的三種情況,如果大家還有其他情況以及其他解決方案不妨分享出來~

⑷ android apk 反編譯怎麼編譯

Android由於其代碼是放在dalvik虛擬機上的託管代碼,所以能夠很容易的將其反編譯為我們可以識別的代碼。
之前我寫過一篇文章反編譯Android的apk包到smali文件 然後再重新編譯簽名後打包實現篡改apk的功能。
最近又有一種新的方法來實現直接從Android apk包里的classes.dex文件,把dex碼反編譯到java的.class二進制碼,然後從.class二進制碼反編譯到java源碼想必就不用我來多說了吧。
首先我們需要的工具是dex2jar和jd-gui
其中第一個工具dex2jar是用來把classex.dex文件也就是dex二進制碼轉化為java的標准.class二進制碼,然後jd-gui是把標準的.class二進制碼再反編譯為java源碼。
首先從apk包裡面提取出classes.dex
放到dex2jar目錄下
然後在命令行下執行
dex2jar.bat classes.dex

這時執行成功後會生成一個classes.dex.dex2jar.jar文件
這個文件再用jd-gui打開,如下圖

幾乎跟我自己寫的這個程序的源碼一樣
提供這個反編譯方法主要用於大家學習與研究,有問題可以與我郵件討論。
希望大家不要用這個方法從事惡意的活動,畢竟,別人辛辛苦苦寫程序也不容易,用這個方法可以大致的學習到別人寫的程序的邏輯,架構,希望對大家有所幫助。
Android 逆向apk程序的心得
本文主要介紹如何逆向一個Android的APK應用程序,本文提供的方法僅供研究學習之用。
本文需要用到的工具有
jdk 這個用於搭建java運行環境
AXMLPrinter2.jar 這個用於逆向.xml文件
baksmali.jar 這個用於逆向classex.dex文件
由於Android的.apk文件實際上就是一個zip文件 可以直接用winrar打開

⑸ android 工程 如何一鍵編譯打包成apk

打包步驟:

1、生成keystore

按照下面的命令行在C:ProgramFilesJavajdk1.6.0_10in>目錄下,輸入keytool-genkey-aliasandroid.keystore-keyalgRSA-validity100000-keystoreandroid.keystore

參數意義:-validity主要是證書的有效期,寫100000天;空格,退格鍵都算密碼。

命令執行後會在C:ProgramFilesJavajdk1.6.0_10in>目錄下生成android.keystore文件。如圖-1

圖-2EclipseAndroid打包工具

接下來的步驟就是不斷的next。下面僅貼出圖片,不解釋。

step2:選擇打包的項目

step3:選擇生成的EclipseAndroid.keystore文件並輸入密碼

step4:選擇aliaskey並輸入密碼

step5:最後選擇生成androidapk文件的目錄及文件名

最終生成的apk文件。

⑹ 如何將apk文件編譯到android鏡像中

你好
1 (1)源碼編譯後,把apk拷貝到out/target/proct/generic/system/app中。
(2) 執行命令make snod , 把添加的spk編到system.img 中
缺點:執行make clean 後,再次make 完畢需要重新執行上面操作。
2 "方法一"的改進。
(1) 新建一個文件夾目錄,用來存放apk文件
mkdir packages/apps/Prebuilt_apps
cd packages/apps/Prebuilt_apps
在Prebuilt_apps中新建make文件
vi Android.mk
並寫入
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_POST_PROCESS_COMMAND := $(shell cp -r $(LOCAL_PATH)/*.apk $(TARGET_OUT)/app/)
保存退出。
(2) 把需要編譯的apk拷貝到目錄Prebuilt_apps下,執行make ,Prebuilt_apps中的apk就會考被到out/target/proct/generic/system/app中。
(3) 執行make snod 。完成。
此方法執行make clean 後,再次make 完畢,只需要make snod即可(有時make後,out/target/proct/generic/system/app沒有需要添加的apk,此時再make一次即可,速度很快)。

⑺ Android 如何對apk文件進行反編譯以及重新

第一:使用apktool直接反編譯apk

第六:把生成的hellodemo.apk安裝到手機,可以看到主界面上已經顯示的是hello,而不再是你好。說明反編譯重新打包成功!

⑻ Android APK編譯流程

apk 是Android Package的簡寫, 在平時的開發過程中,通過點擊 Run app 按鈕 或者 在命令行中輸入

這樣Android Studio就會啟動構建流程,最終輸出一個我們想要的APK。

直達官網介紹

對於小白來說,上面一張圖已經可以解釋apk的構建過程了,不過對於Andoid開發者而言還需要了解一些更詳細的構建過程。

詳細的對應步驟 和 使用工具如下:

資源文件(res文件夾下的文件)通過 AAPT(Android Asset Packaging Tool)打包生成R.java類(資源索引表)、.arsc資源文件 和res文件。

resources.arsc 是一個App的資源索引表,通過R.java 文件 和 resources.arsc 可以定位到資源的內存地址,resources.arsc文件的作用是通過一樣的ID,根據不同的配置索引到最佳的資源顯示在UI中。

AIDL (Android Interface Definition Language), 是Android介面定義語言,是Android提供的IPC (Inter Process Communication,進程間通信)的一種獨特實現。
如果有aidl文件,這個階段會生成對應的Java介面文件。

R.java文件、工程源碼文件、aidl.java文件, 在這一步通過javac生成.class文件。

源碼.class文件和第三方jar或者library通過dx工具打包成dex文件

Android系統的Dalvik虛擬機的可執行文件為DEX格式,所以這里會將上一步中生成的.class文件 和 引用的第三方jar等過程中的.class 一起通過dx工具打包成dex文件

apkbuilder工具會將所有沒有編譯的資源、.arsc資源、.dex文件打包到一個完成apk文件中

tips:

apksigner工具會對未簽名的apk驗證簽名。得到一個簽名後的apk(signed.apk)

apksigner 是google 退出的V2簽名方式
Jarsigner 是之前一直使用的V1簽名方式

可以通過在命令行中輸入apksigner --help來獲取詳情信息,如果沒有特殊需求,使用下面命令即可完成簽名

release mode 下使用 aipalign進行align,即對簽名後的apk進行對齊處理

所謂對齊,主要過程是將APK包中所有的資源文件距離文件起始偏移為4位元組整數倍,這樣通過內存映射訪問apk文件時的速度會更快。對齊的作用主要是為了減少運行時內存的使用。

zipalign是一個android平台上整理APK文件的工具,它對apk中未壓縮的數據進行4位元組對齊,對齊後就可以使用mmap函數讀取文件,可以像讀取內存一樣對普通文件進行操作。如果沒有4位元組對齊,就必須顯式的讀取,這樣比較緩慢並且會耗費額外的內存。

參考文章:
Android-Studio配置構建
淺談Android打包流程
apk打包流程

END!

熱點內容
怎麼用紙做豌豆解壓玩具 發布:2022-09-29 04:39:17 瀏覽:733
雲存儲播放時間表 發布:2022-09-29 03:58:31 瀏覽:598
新英朗4缸買哪個配置劃算 發布:2022-09-29 03:51:54 瀏覽:123
紅旗5配置怎麼選 發布:2022-09-29 03:44:21 瀏覽:887
linux安裝maven 發布:2022-09-29 03:29:18 瀏覽:596
吉利星瑞豪華天窗版有什麼功能配置 發布:2022-09-29 03:20:28 瀏覽:822
伺服器固定ip和彈性ip一起用 發布:2022-09-29 02:40:49 瀏覽:511
gpioc語言 發布:2022-09-29 02:34:40 瀏覽:959
h乚c語言 發布:2022-09-29 02:34:39 瀏覽:410
迷你世界體驗服正式服密碼是多少 發布:2022-09-29 02:21:19 瀏覽:419