㈠ 誰有安卓akp編輯器製作微信的。
該編輯器是通過網路現在的內容,是破解版的,編輯製作功能通過下面的介紹發送給你;
功能介紹:
- 支持直接編輯APK包中的ARSC、dex、XML等資源文件,實現軟體的漢化和修改;
- 保存APK文件時自動簽名;
- 支持對apk文件直接解塵緩包和打包以及直接簽名APK安裝包(長按)
- Google翻譯(長按需要翻譯的文字後彈出翻譯選項)
- 軟體游戲共存製作功能(需注冊,長按需要製作共存的apk文件派判模後彈出選項)
- 強大的詞典記憶功能,為你的漢化積累豐富的資料庫。支持導入詞典漢化功能,帶詞典管理功能,詞典的翻譯條目可自由編輯(長按詞典文件);
- 帶文件管理器功能,支持常用的復制、重命名、刪除等功能;支持安裝APK文件(長按文件名);
- 可以解壓、壓縮、替換jar/zip/apk/ear/war文件中的單個文件以及整個目錄(長按文件或目錄)。
- 資源分支選擇功能,可方便修改不同解析度、不同語言、橫豎屏等差異化資源;
(這里重點說下語言選擇功能。現在的安卓有的軟體有日、英、韓、法等等很多種語言,如果你只想漢化.arsc文件中的英文而又不想其他語言也顯示在屏幕上,就需要這樣操作:打開APK編輯器,並打開.arsc文件,然後按「strings-string」到這里,軟體自動幫你把英文字元分類出來了,如果你想選其他語言,那麼繼續點「default」彈出「資源分支」的選框,這時候選擇你就沖稿可選擇其他語言了。)
更新內容:
apk編輯器(ApkEditor)V1.90更新:
1、新增APK/JPG/GIF/BMP/ICO文件縮略圖顯示功能;
2、新增分欄顯示功能;
3、修正一些bug
V1.80更新: 2013/10/24
1、新增PNG小圖標顯示功能;
2、優化性能;
3、優化內存管理;
4、修正一些bug。
v1.7.0
1,新增可支持繁體中文。
2,新增檔案以及目錄壓縮功能(長按住檔案或目錄)。
3,壓縮目錄時,將擴展名改為apk文件,可直接壓縮並簽名為可安裝的APK安裝包。
4,可設定程式啟動時的初始目錄。
5,可設定是否顯示隱藏的檔案及目錄。
6,可支援用系統預設程式來開啟檔案。
㈡ 微信文件解壓包怎麼打開
在手機上的微信,是不可以直接打開壓縮包的。
你必須在電腦端,登錄電腦版本的微信,然後把壓縮包下載到電腦上,才能拆侍陪夠用相應的壓縮軟體打旅蠢開這談脊個文件,並且進行解壓縮操作。
㈢ 打包微信照片如何解包
在應用市場下載一個解壓工具,就可以對微信照片進行解包。也可以將微信打包照片發送到電腦,在電腦上解壓後,再發送到手機。
㈣ xposed + python 怎麼爬取微信朋友圈的數據
有JAVA的,你參考一下
主要思路
從UI獲取文本信息是最為簡單的方法,於是應該優先逆向UI代碼部分。
逆向微信apk
首先解包微信apk,用dex2jar反編譯classes.dex,然後用JD-GUI查看jar源碼。當然,能看到的源碼都是經過高度混淆的。但是,繼承自安卓重要組件(如Activity、Service等)的類名無法被混淆,於是還是能從中看到點東西。
首先定位到微信APP package。我們知道這個是 com.tencent.mm
。
在 com.tencent.mm
中,我們找到一個 ui
包,有點意思。
展開 com.tencent.mm.ui
,發現多個未被混淆的類,其中發現 MMBaseActivity
直接繼承自 Activity
, MMFragmentActivity
繼承自 ActionBarActivity
, MMActivity
繼承自 MMFragmentActivity
,並且 MMActivity
是微信中大多數Activity的父類:
public class MMFragmentActivity
extends ActionBarActivity
implements SwipeBackLayout.a, b.a {
...
}
public abstract class MMActivity
extends MMFragmentActivity {
...
}
public class MMBaseActivity
extends Activity {
...
}
現在需要找出朋友圈的Activity,為此要用Xposed hook MMActivity
。
創建一個Xposed模塊
參考 [TUTORIAL]Xposed mole devlopment
,創建一個Xposed項目。
簡單Xposed模塊的基本思想是:hook某個APP中的某個方法,從而達到讀寫數據的目的。
小編嘗試hook com.tencent.mm.ui.MMActivity.setContentView
這個方法,並列印出這個Activity下的全部TextView內容。那麼首先需要遍歷這個Activity下的所有TextView,遍歷ViewGroup的方法參考了SO的以下代碼:
private void getAllTextViews(final View v) {
if (v instanceof ViewGroup) {
ViewGroup vg = (ViewGroup) v;
for (int i = 0; i < vg.getChildCount(); i++) {
View child = vg.getChildAt(i);
getAllTextViews(child);
}
} else if (v instanceof TextView ) {
dealWithTextView((TextView)v); //dealWithTextView(TextView tv)方法:列印TextView中的顯示文本
}
}
Hook MMActivity.setContentView
的關鍵代碼如下:
findAndHookMethod("com.tencent.mm.ui.MMActivity", lpparam.classLoader, "setContentView", View.class, new XC_MethodHook() {
...
});
在findAndHookMethod方法中,第一個參數為完整類名,第三個參數為需要hook的方法名,其後若干個參數分別對應該方法的各形參類型。在這里, Activity.setContentView(View view)
方法只有一個類型為 View
的形參,因此傳入一個 View.class
。
現在,期望的結果是運行時可以從Log中讀取到每個Activity中的所有的TextView的顯示內容。
但是,因為View中的數據並不一定在 setContentView()
時就載入完畢,因此小編的實驗結果是,log中啥都沒有。
意外的收獲
當切換到朋友圈頁面時,Xposed模塊報了一個異常,異常源從 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI
這個類捕捉到。從類名上看,這個很有可能是朋友圈首頁的UI類。展開這個類,發現更多有趣的東西:
這個類下有個子類 a
(被混淆過的類名),該子類下有個名為 gyO
的 ListView
類的實例。我們知道, ListView
是顯示列表類的UI組件,有可能就是用來展示朋友圈的列表。
順藤摸瓜
那麼,我們先要獲得一個 SnsTimeLineUI.a.gyO
的實例。但是在這之前,要先獲得一個 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a
的實例。繼續搜索,發現 com.tencent.mm.plugin.sns.ui.SnsTimeLineUI
有一個名為 gLZ
的 SnsTimeLineUI.a
實例,那麼我們先取得這個實例。
經過測試, com.tencent.mm.plugin.sns.ui.SnsTimeLineUI.a(boolean, boolean, String, boolean)
這個方法在每次初始化微信界面的時候都會被調用。因此我們將hook這個方法,並從中取得 gLZ
。
findAndHookMethod("com.tencent.mm.plugin.sns.ui.SnsTimeLineUI", lpparam.classLoader, "a", boolean.class, boolean.class, String.class, boolean.class, new XC_MethodHook() {
@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
XposedBridge.log("Hooked. ");
Object currentObject = param.thisObject;
for (Field field : currentObject.getClass().getDeclaredFields()) { //遍歷類成員
field.setAccessible(true);
Object value = field.get(currentObject);
if (field.getName().equals("gLZ")) {
XposedBridge.log("Child A found.");
childA = value;
//這里獲得了gLZ
...
}
}
}
});
現在取得了 SnsTimeLineUI.a
的一個實例 gLZ
,需要取得這個類下的 ListView
類型的 gyO
屬性。
private void dealWithA() throws Throwable{
if (childA == null) {
return;
}
for (Field field : childA.getClass().getDeclaredFields()) { //遍歷屬性
field.setAccessible(true);
Object value = field.get(childA);
if (field.getName().equals("gyO")) { //取得了gyO
ViewGroup vg = (ListView)value;
for (int i = 0; i < vg.getChildCount(); i++) { //遍歷這個ListView的每一個子View
...
View child = vg.getChildAt(i);
getAllTextViews(child); //這里調用上文的getAllTextViews()方法,每一個子View里的所有TextView的文本
...
}
}
}
}
現在已經可以將朋友圈頁面中的全部文字信息列印出來了。我們需要根據TextView的子類名判斷這些文字是朋友圈內容、好友昵稱、點贊或評論等。
private void dealWithTextView(TextView v) {
String className = v.getClass().getName();
String text = ((TextView)v).getText().toString().trim().replaceAll("\n", " ");
if (!v.isShown())
return;
if (text.equals(""))
return;
if (className.equals("com.tencent.mm.plugin.sns.ui.AsyncTextView")) {
//好友昵稱
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.SnsTextView")) {
//朋友圈文字內容
...
}
else if (className.equals("com.tencent.mm.plugin.sns.ui.MaskTextView")) {
if (!text.contains(":")) {
//點贊
...
} else {
//評論
...
}
}
}
自此,我們已經從微信APP里取得了朋友圈數據。當然,這部分抓取代碼需要定時執行。因為從 ListView
中抓到的數據只有當前顯示在屏幕上的可見部分,為此需要每隔很短一段時間再次執行,讓用戶在下滑載入的過程中抓取更多數據。
剩下的就是數據分類處理和格式化輸出到文件,受本文篇幅所限不再贅述,詳細實現可參考作者GitHub上的源碼。
㈤ 哪位大神會解包微信啊 ,求講解和詳細教程,求大神指教啊
在微信設置清除聊天記錄,就沒那段語音了 ~
㈥ 微信小程序反編譯沒保存
沒保存就需要重新編寫。
小程序反編譯,如果沒有保存的話是沒有辦法找回的,需要重新編寫才可以。要想拿到微信小程序源碼,先要拿到小程序的包,用反編譯腳本跑一下,微信小程序代碼包里的所有文件、所有資源就出來了(除了project.config.json小程序配置文件)。
操作時需准備工具:1、nodejs環境,這是反編譯腳本的運行環境,下方有地址。2、小程序包解密工具,PC版解包無需模擬器,附件中有這個。3、反編譯腳本下載,附件中有這個。4、微信PC端,運行小程序,自己下載電腦端微信。
㈦ 如何應用安卓APK文件進行解包打包和修改
不需要解包跟打包,直接修改就可以,修改的的方法。
如下參考:
1.將需要修改的apk包復制到100apktool的路徑中。注意:您需要將文件名更改為123apk,如下圖。
㈧ 微信為什麼總出現unpackingdata
解包數據。
當出遲攜現這個詞的時候不要慌張,這是你的微信有的文件正在解析,這個液旦亮詞是解包數據的意思。項目中要使用串口通信,要對數據進行解包,找出需要的數據。對不符合協議的數據丟棄,要求可以對數據進行干擾,在數據前鬧寬後都可以插入擾亂數據。
㈨ PyInstaller打包、解包與反編譯.pyc文件
PyInstaller官網: https://www.pyinstaller.org/
假設有一個demo.py文件,在同目錄下啟動命令行或從命令行進入當前文件夾,使用如下命令打包
打包後同目錄下會產生兩個文件夾build和dist(distribution),dist文件夾內就是目標程序。
解包使用pyinstxtractor工具
Github地址: https://github.com/extremecoders-re/pyinstxtractor
假設在第1步中,使用-F參數將demo.py打包為獨立可執行文件demo.exe,進入dist文件夾,將pyinstxtractor.py放在該目錄下,在該目錄下啟動命令行或從命令行進入該文件夾,使用如下命令解包
解包得到的內容將放入同目錄下的demo.exe_extracted文件夾
找到目標.pyc文件,比如demo.pyc
反編譯.pyc文件使用uncompyle6工具
Github地址: https://github.com/rocky/python-uncompyle6
可以直接通過pip安裝uncompyle6
由於pyinstaller在打包可執行文件時會將.pyc文件頭部的16位元組magic head去掉,因此需要對需要反編譯的.pyc文件進行預處理,將文件頭部的16位元組magic head補充完整。這里使用一個開源的16進制編輯器ImHex。
Github地址: https://github.com/WerWolv/ImHex
進入demo.exe_extracted文件夾,用16進制編輯器打開struct.pyc文件復制頭部的16位元組magic head,再用16進制編輯器打開demo.pyc文件,將頭部的16位元組改為magic head,即將圖2中的部分更改為圖1中的值即可。
使用前一個命令,反編譯後的源碼內容會顯示在命令行窗口內;使用後一個命令,源碼會列印到指定文件中,如demo.py。
到此為止可以
Invalid pyc/pyo file - Magic value mismatch!
補充magic head後即可正常反編譯。
如果不是項目成員給所謂的程序而不肯給源碼,而我又繞不過這個程序的問題,我才不想折騰這些有的沒的。
㈩ 怎樣從緩存中找出小程序
微信小程序搜索我們要解包的小程序,點擊進去。讓電腦進行載入小程序,緩存小程序文件到本地。然後微信設置查看文件管理,微信文件保存的位置。小程序包也儲存在那裡,可以看到wx開頭就是。可以看到電腦已經緩存了剛才的小程序文件,默認的路徑一般在C:位置。找不到的話可以搜索applet,查看路徑。wx開頭的都是。找到自己要解包的小程序,如果太多分不清哪個是我們需要的話,可以把wx開頭的文件清空刪除,重新載入小程序,生成新的。就是我們能需要的。點擊到文件裡面,會看到_APP_開頭的主包,打開下載好的小程序,選擇PC小程序解包,把裡面的_APP_.wxapkg拖拽進去,選擇解包後保存的路徑,點擊開始解密。然後選擇小程序反編譯,把解包出來的文件放進去,選擇保存的路徑。點擊開始反編譯。找到反編譯後保存的路徑,大功告成。