❶ Android APP包名更改
因為客戶定製App,需要對出來的工程包名進行更改,步驟如下:
7.對於一些文件或自定義的通知,包名並不能自動同步,所以我們需要手動去更改它。Ctrl+H(Windowns)或Shift+command+F(Mac),搜索舊包名,手動更改成新包名。
❷ 安卓逆向——如何修改APP包名實現應用分身
齊天大聖孫悟空是家喻戶曉的神話傳說名人,大家都知道他有一個很強大的技能——拿出一根猴毛「biu」一吹實現分身。
那麼我們程序猿也和咱們的齊天大聖是同類(開個玩笑),程序猿怎麼實現分身呢?我們拔一根頭發吹肯定是不好使的……那就是通過修改APP的包名來實現應用分身。也就是說在同一個設備上可以打開兩個或多個相同的APP。
一.如何修改APK的包名
那麼如何修改apk的包名呢?我們以「土豆視頻為例」來進行一個分析。首先,找到「工程管理器」,打開工程管理器進入界面,點開土豆視頻的下行文件數據
裡面有「manifest」這樣一個標簽,找到這個標簽裡面的一個「package」屬性,這個值就是我們要找到應用程序的包名
第二步,把「package」屬性改為「hou」或者「123」等等都可。
這個值我們可以通過刪減幾個字母或者是任意添加幾個字母或數字來進行修改,切記注意只能使用添加或刪減數字和字母,不可以用漢字!
建議通過「添加數字或字母實現」,刪除容易把握不準,當然刪除以後一定要記得保存。 然後點擊「回編譯」按鈕,進行回編譯過程
二.如何修改內容提供者
啟動模擬器,進行應用安裝,然後把我們「回編譯」好的拖到模擬器裡面
發現安裝失敗,提示「存在同名的內容提供者」。 錯誤的原因由於我們只修改了包名,沒有修改內容提供者。 那麼如何修改「內容提供者」?
搜索結束後顯示我們 需要修改的是「provider」裡面有個「android;anthorities」的值
修改的方法同修改「package」值的屬性是一樣的,可以添加或刪減字母或者是數字(絕對不能是漢字)
將搜索到的結果進行逐一全部修改,修改完成後千萬不能忘記保存
完成之後找到其所在的目錄進行安裝,方法同樣,直接拖進模擬器裡面即可
※這里補充一點:有的apk由於沒有內容提供者,就只需要一步到位——修改包名就可以直接實現應用分身了。
三.程序無法運行安裝及對應解決方案
那麼在什麼情況下會導致程序無法運行以及安裝,它們對應的解決方案是什麼呢?
Q 1 · 只修改apk的包名會引發內容提供者沖突
解決方案:
修改配置文件中所有內容提供者的標簽「provider」裡面「android:authorities」屬性的值
Q 2· 應用程序分身的簽名信息不同導致無法運行
解決方案:
使用相同的簽名工具對所有分身進行統一的簽名
Q 3· 有些apk在內部使用的包名只修改包名會導致程序崩潰
解決方案:
全局搜索應用程序的包名查看搜索結果,如果是字元串就進行一個替換,將原有的字元串修改為修改後的包名否則不進行替換
這就是如何修改apk的包名實現應用程序分身的具體方法了,在實際操作中可能會遇到更多的小細節問題,我們要具體問題具體分析。總之多動手多思考多實操,安卓逆向沒有什麼太難的。當然分享的相關經驗,如果有哪處不妥也歡迎在評論區回復討論或者私聊交流哈。