androidsdk結構
❶ androidsdk怎麼安裝
Android SDK的安裝與環境變數配置步驟: 一、配置Andriod環境變數 1、下載Android SDK,點擊安裝,直接默認路徑即可 2、默認路徑安裝後,安裝完成,開始配置環境變數。 3、打開計算機屬性——高級系統設置——環境變數(如上文) 4、新建一個環境變數,變數名:ANDROID_HOME,變數值:D:\Program Files\android-sdk-windows(以你安裝目錄為准,確認裡面有tools和add-ons等多個文件夾),點擊確認。 5、在用戶變數PATH後面加上變數值;%ANDROID_HOME%\platform-tools;點擊確認即可。 在系統變數path中添加;D:\Program Files\android-sdk-windows\tools 6、Android SDK配置完成,接下來驗證配置是否成功。 7、點擊運行——輸入cmd——回車——輸入adb——回車,如果出現一堆英文,如下圖所示,即表示配置成功,在輸入Android,啟動Android SDK Manager。 二、下載和安裝Andriod SDK 1網站上,如下圖,下載相應的sdk版本就是了,由於我的電腦的操作系統是windows,所以我直接在選擇了android-sdk_r12-windows(圖中有標識). 下載完成後,解壓後得到android-sdk-windows文件夾,該文件夾包含如下文件結構: (1)add-ons:該目錄存放額外的附件軟體。剛解壓時該目錄為空。 (2)platforms:該目錄存放不同版本的Android版本。剛解壓時該目錄為空。 (3)tools:該目錄存放大量的Android開發,調試工具 (4)SDK Manager.exe:該程序就是Andriod SDK管理器。 (5)AVD Manager.exe:該程序就是Andoid虛擬設備。 (6)docs:該文件夾存放了Android SDK開發文件和API文檔等 (7)platforms-tools:該文件夾存放Android平台和相關工具 (8)samples:該文件夾存放不同的Android平台和示常式序。 2.安裝sdk開發使用的相應的包 運行之後安裝了sdkmanager,然後sdkmanager啟動後會去android倉庫去取還未安裝的包的信息,如下圖(由於我的系統中已安 裝好,因此每個包前面都是綠色打勾的),為了偷懶,我直接就選擇了accept all,將所有的包安裝上.其實,如果自己對android整個體系比較了解的話,可以選擇只安裝自己需要用到的部分.
❷ 如何搭建 android 開發環境
一.認識android的架構
Android其本質就是在標準的linux系統上增加了java虛擬機Dalvik,並在Dalvik虛擬機上搭建了一個JAVA的application framework,所有的應用程序都是基於JAVA的application framework之上。
android分為四個層,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和linux核心層。
二.搭建環境
搭建開發環境
對國內的開發者來說最痛苦的是無法去訪問android開發網站。為了更好的認識世界,對程序員來說,會翻牆也是的一門技術,帶你去領略牆外的世界,好了,不廢話了, 國內開發者訪問(androiddevtools) 上面已經有了所有你要的資源,同時可以下載到我們的主角framework
但是這樣的搭建只能去閱讀源代碼,我們無法去更進一步去實現自己的rom,我們看到錘子的系統在早期的開放rom是自己從新實現了framework的代碼,現在看起來他成功了,所以我們還要去搭建android系統的源碼編譯環境。
搭建源碼編譯環境
三.開始主題
在一開始寫c程序的時候都有一個運行的入口,比如
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
//這里的main就是應用的入口
int main(int argc, const char * argv[]){
return 0;
}
在計算機網路原理中我們用socket實現一個伺服器端,不斷的接聽客戶端的訪問,而且他的代碼是這樣實現的:
#include <winsock2.h>
#pragma comment(lib, "WS2_32.lib")
#include <stdio.h>
void main()
{
WORD wVersionRequested;//版本號
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(2, 2);//2.2版本的套接字
//載入套接字型檔,如果失敗返回
err = WSAStartup(wVersionRequested, &wsaData);
if (err != 0)
{
return;
}
//判斷高低位元組是不是2,如果不是2.2的版本則退出
if (LOBYTE(wsaData.wVersion) != 2 ||
HIBYTE(wsaData.wVersion) != 2)
{
return;
}
//創建流式套接字,基於TCP(SOCK_STREAM)
SOCKET socSrv = socket(AF_INET, SOCK_STREAM, 0);
//Socket地址結構體的創建
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);//轉換Unsigned long型為網路位元組序格
addrSrv.sin_family = AF_INET;//指定地址簇
addrSrv.sin_port = htons(6000);
//指定埠號,除sin_family參數外,其它參數都是網路位元組序,因此需要轉換
//將套接字綁定到一個埠號和本地地址上
bind(socSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));//必須用sizeof,strlen不行
listen(socSrv, 5);
SOCKADDR_IN addrClient;//字義用來接收客戶端Socket的結構體
int len = sizeof(SOCKADDR);//初始化參數,這個參數必須進行初始化,sizeof
//循環等待接受客戶端發送請求
while (1)
{
//等待客戶請求到來;當請求到來後,接受連接請求,
//返回一個新的對應於此次連接的套接字(accept)。
//此時程序在此發生阻塞
SOCKET sockConn = accept(socSrv, (SOCKADDR*)&addrClient, &len);
char sendBuf[100];
sprintf(sendBuf, "Welcome %s to JoyChou",
inet_ntoa(addrClient.sin_addr));//格式化輸出
//用返回的套接字和客戶端進行通信
send(sockConn, sendBuf, strlen(sendBuf)+1, 0);//多發送一個位元組
//接收數據
char recvBuf[100];
recv(sockConn, recvBuf, 100, 0);
printf("%s\\n", recvBuf);
closesocket(sockConn);
}
}
他採用了一個while死循環去監聽客戶端的請求。
先上源代碼
public final class ActivityThread {
public static void main(String[] args) {
SamplingProfilerIntegration.start();
CloseGuard.setEnabled(false);
Environment.initForCurrentUser();
EventLogger.setReporter(new EventLoggingReporter());
Security.addProvider(new AndroidKeyStoreProvider());
final File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId());
TrustedCertificateStore.setDefaultUserDirectory(configDir);
Process.setArgV0("<pre-initialized>");
Looper.prepareMainLooper();
//從中可以看到為app開辟了一個線程進入了looper之中
ActivityThread thread = new ActivityThread();
thread.attach(false);
if (sMainThreadHandler == null) {
sMainThreadHandler = thread.getHandler();
}
AsyncTask.init();
if (false) {
Looper.myLooper().setMessageLogging(new
LogPrinter(Log.DEBUG, "ActivityThread"));
}
Looper.loop();
throw new RuntimeException("Main thread loop unexpectedly exited");
}
}
看到源碼失望了,沒有一個while循環啊,其實用了他方法實現
//用一個looper的機制循環監聽響應
Looper.prepareMainLooper();
Looper.loop();
進一步深入代碼
public static void loop() {
final Looper me = myLooper();
if (me == null) {
throw new RuntimeException("No Looper; Looper.prepare() wasn't called on this thread.");
}
final MessageQueue queue = me.mQueue;
Binder.clearCallingIdentity();
final long ident = Binder.clearCallingIdentity();
// 在這里看到了一個循環監聽消息
for (;;) {
Message msg = queue.next(); // might block
if (msg == null) {
// No message indicates that the message queue is quitting.
return;
}
Printer logging = me.mLogging;
if (logging != null) {
logging.println(">>>>> Dispatching to " + msg.target + " " +
msg.callback + ": " + msg.what);
}
msg.target.dispatchMessage(msg);
if (logging != null) {
logging.println("<<<<< Finished to " + msg.target + " " + msg.callback);
}
// Make sure that ring the course of dispatching the
// identity of the thread wasn't corrupted.
final long newIdent = Binder.clearCallingIdentity();
if (ident != newIdent) {
Log.wtf(TAG, "Thread identity changed from 0x"
+ Long.toHexString(ident) + " to 0x"
+ Long.toHexString(newIdent) + " while dispatching to "
+ msg.target.getClass().getName() + " "
+ msg.callback + " what=" + msg.what);
}
msg.recycleUnchecked();
}
}
❸ 如何查看Android SDK API文檔
你問這個,就說明你現在就在看這個,但是不曉得怎麼看
個人經驗: 一般api都是以樹的方式給你,最上層是下一層的父親,也就是說下層類繼承自上層類,,這是基礎
然後,每一個類展開後是單獨一個樹結構,這個類的作用,一般都是它功能的英文縮寫,這個類打開後,下面是該類所具有的方法(一般我們就是調用這個方法,每一個方法都會給你一個返回值),靜態類方法直接通過類名引用,其它方法一般通過實例化對象引用(引用有許多種方法,這里不細究)
看到這,你就應該知道sdk中api有和作用了,說白了,它就是給我們許多別人封裝好的類,類裡面有許多的方法,我們調用相應的方法,處理相應的問題,得到相應的結果而已
❹ android 的每個版本 sdk 裡面帶的 sample 之間的關系是什麼樣的
我打開每個 android sdk 版本裡面的 sample 大概看了一下,發現前面幾個版本像是在後面的版本裡麵包含前面版本的內容,比如 sdk 8 包含 sdk 7 sample 裡面的內容,但是到 sdk 18 的時候裡面的 sample 的組織結構都改變了,雖然每個版本的 sample 大小都是遞增的,但是不完全後面的版本的 sample 包含了前面的版本的 sample。
❺ myeclipse怎麼搭建android開發環境
myeclipse搭建android開發環境安裝adt就可以。
工具/原料
eclipse
jdk
方法/步驟
從eclipse中選擇help下面的install new software
❻ 安裝android studio的sdk有什麼用
Android
studio安裝完後會自帶
sdk
的,如果沒有
sdk
的話,程序是無法編譯運行的,sdk的路徑自己可以修改,它的目錄結構如下所示:
Android
Studio里的設置界面如下:
進入SDK
Manager可以對
sdk
版本進行下載更新。
注意:自帶的
sdk
版本可能會比較低,因此可以根據需要下載對應的版本。
❼ androidsdk環境變數怎樣配置
1、下載java,並且安裝。 下載地址: download-1501626.html
2、安裝的時候,最好別改安裝路徑,默認路徑一直點下一步即可!
3、安裝完成後,接下來就是配置java環境變數了。
4、打開計算機屬性,點擊高級系統設置
5、選擇「高級」-「環境變數」
二、 關於JDK 安裝,以及Java環境的設置
1、下載JDK1.6,選擇對應的安裝路徑
2、配置相應的Java 環境變數
A、屬性名稱:JAVA_HOME
屬性值:C:Program FilesJavajdk1.6.0_02
B、屬性名稱:PATH
屬性值:;%JAVA_HOME%bin;%JAVA_HOME%jrebin
C、屬性名稱:CLASSPATH
屬性值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar
要加.表示當前路徑,另外,%JAVA_HOME%就是引用前面指定的JAVA_HOME
6. 關於環境變數是否安裝成功的測試
「開始」->;「運行」,鍵入「cmd」;
鍵入命令命令,出現畫面,說明環境變數配置成功:
A、java -version;
B、java;
C、javac;
Android SDK的安裝與環境變數配置
一、配置Andriod環境變數
1、下載Android SDK,點擊安裝,直接默認路徑即可! 下載地址:http://developer.android.com/sdk/index.html
2、默認路徑安裝後,安裝完成,開始配置環境變數。
3、打開計算機屬性——高級系統設置——環境變數(如上文)
4、新建一個環境變數,變數名:ANDROID_HOME,變數值:D:Program Filesandroid-sdk-windows(以你安裝目錄為准,確認裡面有tools和add-ons等多個文件夾),點擊確認。
5、在用戶變數PATH後面加上變數值;%ANDROID_HOME%platform-tools;點擊確認即可。 在系統變數path中添加;D:Program Filesandroid-sdk-windowstools
6、Android SDK配置完成,接下來驗證配置是否成功。
7、點擊運行——輸入cmd——回車——輸入adb——回車,如果出現一堆英文,如下圖所示,即表示配置成功,在輸入Android,啟動Android SDK Manager。
二、下載和安裝Andriod SDK
1.SDK下載
去 http://www.android.com/ 在那個頁面中有developers鏈接,點擊後鏈接到developer.android.com網站上,如下圖,下載相應的sdk版本就是了,由於我的電腦的操作系統是windows,所以我直接在選擇了android-sdk_r12-windows(圖中有標識).
下載完成後,解壓後得到android-sdk-windows文件夾,該文件夾包含如下文件結構:
(1)add-ons:該目錄存放額外的附件軟體。剛解壓時該目錄為空。
(2)platforms:該目錄存放不同版本的Android版本。剛解壓時該目錄為空。
(3)tools:該目錄存放大量的Android開發,調試工具
(4)SDK Manager.exe:該程序就是Andriod SDK管理器。
(5)AVD Manager.exe:該程序就是Andoid虛擬設備。
(6)docs:該文件夾存放了Android SDK開發文件和API文檔等
(7)platforms-tools:該文件夾存放Android平台和相關工具
(8)samples:該文件夾存放不同的Android平台和示常式序。
2.安裝sdk開發使用的相應的包
運行之後安裝了sdkmanager,然後sdkmanager啟動後會去android倉庫去取還未安裝的包的信息,如下圖(由於我的系統中已安 裝好,因此每個包前面都是綠色打勾的),為了偷懶,我直接就選擇了accept all,將所有的包安裝上.其實,如果自己對android整個體系比較了解的話,可以選擇只安裝自己需要用到的部分.
三、在eclipes中配置和安裝ADT(Android Development Tools)
1.安裝ADT
首先的下載和安裝Eclipse,登陸 http://www.eclipse.orgEclipse 站點,下載 IDE for java EE Devlelopers的最新版本,然後安裝。
ADT是eclipse的一個插件,如同cdt和jdt一個道理.要開發android程序,至少要有個cde(集成開發環境).而android官方推 薦的是eclipse.並且為eclipse下開發android准備了ADT這樣一個插件.有了這個插件,就能比較方便的開發android程序了.
然後點擊 Help->Install new Software,在彈出的窗口中點擊add按鈕
name:AndroidADT或者其它任何名字。
❽ android sdk和api的區別
Eclipse插件的安裝方法大體有以下三種:第一種:直接復製法 假設Eclipse的安裝目錄在C:\eclipse,解壓下載的eclipse 插件或者安裝eclipse 插件到指定目錄AA(如:c:\AA)文件夾,打開AA 文件夾,在AA文件夾里分別包含兩個文件夾features和plugins ,然後把兩個文件夾里的文件分別復制到C:\eclipse下所對應的文件夾下的features 和plugins 下,一般的把插件文件直接復制到eclipse目錄里是最直接也是最愚蠢的一種方法!因為日後想要刪除這些插件會非常的困難,不推薦使用。 注意:直接將插件包解壓到plugins文件夾下之後,重啟eclipse,可能不會載入新的插件。 解決方法是: 1、打開命令行,到當前eclipse的目錄下,輸入eclipse -clean,重新啟動eclipse,這樣eclipse就會加上新的插件了。 2、如果插件不能生效,則請將eclipse\configuration\org.eclipse.update目錄刪除後再啟動eclipse; 你可以在eclipse的菜單"Help"-->"About Eclipse SDK"-->"Feature Details" 和"Plug-in Details"中看到新安裝的插件。 第二種:使用link文件法 a.假設Eclipse的安裝目錄在C:\eclipse,在該文件夾下,新建這樣的目錄結構C:\eclipse\PluginsEclipse\jode\eclipse; b.解壓下載的eclipse 插件或者安裝eclipse 插件到指定目錄BB(如:C:\BB)文件夾,打開BB文件夾,然後把 BB文件夾里的兩個文件夾features和plugins復制到剛剛新建好C:\eclipse\PluginsEclipse\jode\eclipse,這樣eclipse中就有了兩個插件目錄features and plugins下。 c.在C:\eclipse目錄中新建links(C:\eclipse\links)目錄,在links目錄中建立一個以link為擴展名的文本文件如jode.link,內容如下path=C:/eclipse/PluginsEclipse/jode 或者path=C:\\eclipse\\PluginsEclipse\\jode(插件的目錄),保存後重啟eclipse插件就會安裝完成。 注意:link文件中path=插件目錄的path路徑分隔要用\\或是/ Java代碼 /eclipse/ links/ jode.link webtools.link updateManager.link ... ... /eclipse/ links/ jode.link webtools.link updateManager.link ... ... 可以在eclipse的菜單"Help"-->"About Eclipse SDK"-->"Feature Details" 和"Plug-in Details"中看到新安裝的插件。 第三種:使用eclipse自帶圖形界面安裝 選擇Help > Software Updates > Manager Configuration,再選擇Add > Extension Location 找到你要安裝插件的目錄就可以了。使用eclipse的help->SoftwareUpdates ->Find and install... search for new features... 輸入軟體安裝地址進行安裝強烈推薦這種方法,優點很多比如可以方便的添加刪除,也不用自己寫link文件! 備註:Eclipse插件的目錄結構 Java代碼 /eclipse-plugins/ eclipse/ .eclipseextension features/ plugins/ 第2.3種方法所指向的目錄都指的是"eclipse"目錄, 如果用第3種方法,在eclipse這個目錄下必須有文件.eclipseextension,如果下載的插件沒有這個文件, 那就隨便eclipse安裝目錄下的那個文件拷過去就行,只有有這么個文件就可以了,內容沒什麼用,主要是一些版本信息。例如: Java代碼 id=org.eclipse.platform name=Eclipse Platform version=3.1.1 id=org.eclipse.platform name=Eclipse Platform version=3.1.1
❾ 如何離線安裝android sdk
打開AndroidSDKManager可見大致分為三類下載:
第一個分類tools
第二個分類為各版本api
第三個分為Extras
從這三個類別中各選擇一個並開始下載,此時打開右下角的查看日誌按鈕(紅色手右邊的那個按鈕)可獲取讀取xml文件日誌。
(如提示無法下載成功,可能所處網路無法正常訪問下載地址,可在Tool>Options中勾選Forcehttps://...)
從認真查看日誌文件,發現規律如下:
先載入一個xml文件,解析該xml文件,再從該xml文件中獲取對應分類的文件的版本信息。
逐一打開這幾個xml文件,發現就是描述各分類文件的版本信息的,此時我們可從xml文件查看各文件名,只需該文件名填入到這個下載地址即可完成下載:
https://dl-ssl.google.com/android/repository/******.zip(後面這個******.zip是根據你需要下載的文件進行對應填充)。
系統鏡像地址前綴:
http://dl-ssl.google.com/android/repository/sysimg_armv7a-17_r02.zip
http://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-17_r01.zip
http://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-17_r01.zip
日誌結構大致如下:
Fetchinghttps://dl-ssl.google.com/android/repository/addons_list-2.xml
ValidateXML
ParseXML
FetchedAdd-onsListsuccessfully
FetchingURL:https://dl-ssl.google.com/android/repository/repository-8.xml
ValidateXML:https://dl-ssl.google.com/android/repository/repository-8.xml
ParseXML:https://dl-ssl.google.com/android/repository/repository-8.xml
FoundSDKPlatformAndroid1.1,API2,revision1(Obsolete)
FoundSDKPlatformAndroid1.5,API3,revision4
FoundSDKPlatformAndroid1.6,API4,revision3
...略去....
ParseXML:https://dl-ssl.google.com/android/repository/addon.xml
FoundGoogleAPIs,AndroidAPI3,revision3
FoundGoogleAPIs,AndroidAPI4,revision2
FoundGoogleAPIs,AndroidAPI5,revision1(Obsolete)
...略去......
FetchingURL:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
ValidateXML:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
ParseXML:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
(HAXM),revision3
...略去......
ParseXML:https://dl-ssl.google.com/android/repository/sys-img/mips/sys-img.xml
FoundMIPSSystemImage,AndroidAPI15,revision1
FoundMIPSSystemImage,AndroidAPI16,revision4
FoundMIPSSystemImage,AndroidAPI17,revision1
...略去......
ParseXML:https://dl-ssl.google.com/android/repository/sys-img/x86/sys-img.xml
FoundIntelx86AtomSystemImage,AndroidAPI10,revision2
FoundIntelx86AtomSystemImage,AndroidAPI15,revision1
FoundIntelx86AtomSystemImage,AndroidAPI16,revision1
FoundIntelx86AtomSystemImage,AndroidAPI17,revision1
FoundIntelx86AtomSystemImage,AndroidAPI18,revision1
...略去......
❿ 定位軟體的SDK與普通APP的SDK工作機制有什麼不同
先說apk,APK是AndroidPackage的縮寫,即Android安裝包(apk),是安卓的應用程序的文件格式。安卓專屬,區別於iOS應用程序的ipa,pxl,deb格式,wp8(10)應用程序的xap(appx)格式。
一.格式定義
在Android平台中dalvik vm的執行文件被打包為apk格式,最終運行時載入器會解壓然後獲取編譯後的androidmanifest.xml文件中的permission分支相關的安全訪問,但仍然存在很多安全限制,如果你將apk文件傳到/system/app文件夾下會發現執行是不受限制的。安裝的文件可能不是這個文件夾,而在androidrom中,系統的apk文件默認會放入這個文件夾,它們擁有著root許可權。
二.文件結構
1. META-INF\ (註:Jar文件中常可以看到);
2. res\ (註:存放資源文件的目錄) ;
3. AndroidManifest.xml (註:程序全局配置文件) ;
4. classes.dex (註:Dalvik位元組碼);
5. resources.arsc (註:編譯後的二進制資源文件)。
三.開發環境
Android是一個基於Java的開發環境,它是一種與廣被接受的 Java極為類似,而且也比C++容易得多的開發語言,這是一種規范的移動開發環境。Google也在API文檔的書寫和樣例的提供上做了很出色的工作。
獲取SDK
下載並安裝android的SDK[軟體開發套件],這套SDK主要包括有核心庫文件,一個模擬器,開發工具和一些示範的樣例文件。推薦使用Eclipse 和androideclipse 擴展。如果只是使用android,Eclipse IDE就已經足夠了,但如果是第一次開發Java應用,建議下載完整的Java SE 開發工具 (JDK) 因為它包括簽發應用程序所需要的工具。
應用架構
android應用架構很關鍵,如果不學習它,設計出來的游戲將是一種很難修復bug的產品。 需要了解應用程序、活動、Intents以及它們是如何互相聯系交互的,Google在這兒提供了良好的信息架構。真正重要的是,要理解為什麼在設計的游戲中需要不止一個的活動進程以及如何設計一個用戶體驗良好的游戲。這些都應當配合到應用的生命周期中。
應用的生命周期
應用的生命周期是由AndroidOS操作系統進行管理的活動進程都將做為系統命令進行創建,正確處理這些事件對一個應用程序來說是極為重要的,因為終端用戶不會知道什麼是正確的。最好在開始設計游戲之前搞明白這些,因為這有助於節省調試時間以及避免代價高昂的重新設計。對大多數應用而言,默認設置即可開始工作,但對游戲而言,可能需要調整單態實例的信號為打開。在默認情況下,Android會新建一個活動實例進程,因為它認為這是比較合適的,而游戲,可能只希望有一個活動的實例進程,這有一點兒影響,它需要了解一些系統狀態的管理。
四.apk反編譯
apk反編譯就是通過使用apk編譯工具將apk文件中的源文件和資源反編譯出來,得到的源文件和資源文件可以進行處理後再進行編譯,以達到個性化定製,漢化apk等目的。[1]
apk反編譯工具
1、最典型的apk編譯工具的核心是apktool,但是因為操作需要調用cmd命令,所以出現了很多具有可視化界面的各種編譯工具,像easyapk,apkdb,doapk
2、dex2jar.jar,將apk中的classes.dex轉化成Jar文件,再通過jd-gui工具反編譯jar文件。
apk編譯方法
使用apkdb編譯apk文件只需要在安裝apkdb後直接右擊反編譯就可以將apk文件反編譯出來
1、使用原生apktool工具,需要將apktool的兩個文件釋放到window目錄下,在cmd中使用 apktool d apk文件名 命令來編譯apk文件,此時命令行的執行目錄與apk文件所在目錄必須一致。
2、首先將apk文件,將後綴改為zip,解壓,得到其中的classes.dex,它就是java文件編譯再通過dx工具打包而成的;將classes.dex復制到dex2jar.bat所在目錄。在命令行下定位到dex2jar.bat所在目錄,運行 dex2jar.bat classes.dex。
再說APP,APP指的是智能手機的第三方應用程序,Application的縮寫 。簡單來說就是智能設備(包括手機,平板,智能電視等~~)所用的軟體!