Apk decompilation and modification tutorial series-----Modify the pictures in the apk and change the apk desktop picture at will [3]

Past tutorials:

apk decompilation and modification tutorial series-----Modify the apk application name, modify the name arbitrarily, and sign [1]

Apk decompilation and modification tutorial series-----arbitrarily modify the apk version number and version name to prevent automatic updates [2]

This example demonstrates how to change the desktop icon image after the apk is installed. In fact, I have a tutorial post before this step. This time I will make a supplement about the steps.

Android Play Machine-----Teach you how to modify the startup image of WeChat so that "her" in your heart becomes the first screen of WeChat communication [for reference only]

This time, a commonly used software "Separation Youshu" is used as a demonstration apk. The software icon after normal installation is like this.

The software part information in its androidmanifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:dist="http://schemas.android.com/apk/distribution"
   package="com.droi.adocker"
   platformBuildVersionCode="28"
   platformBuildVersionName="9"
   android:versionCode="1"
   android:versionName="1.1.3"
   android:compileSdkVersion="28"
   android:compileSdkVersionCodename="9">
  <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="28"/>
  <dist:module dist:instant="true"/>
  <!-- 查看网络连接 -->
  <uses-permission .="android.permission.ACCESS_NETWORK_STATE"/>
  <!-- 访问WiFi网络状态信息.-->
  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
  <!-- 拥有完全的网络访问权限 -->
  <uses-permission android:name="android.permission.INTERNET"/>
  <!-- 修改或删除您共享存储空间中的内容 -->
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  <!-- 读取您共享存储空间中的内容 -->
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
  <!-- 读取手机状态和身份 -->
  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
  <uses-permission android:name="com.huawei.authentication.HW_ACCESS_AUTH_SERVICE"/>
  <uses-permission android:name="com.samsung.svoice.sync.READ_DATABASE"/>
  <uses-permission android:name="com.samsung.svoice.sync.ACCESS_SERVICE"/>
  <uses-permission android:name="com.samsung.svoice.sync.WRITE_DATABASE"/>
  <uses-permission android:name="com.sec.android.app.voicenote.Controller"/>
  <uses-permission android:name="com.sec.android.permission.VOIP_INTERFACE"/>
  <uses-permission android:name="com.sec.android.permission.LAUNCH_PERSONAL_PAGE_SERVICE"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.READ_RECORD_AUDIO"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_RECORD_AUDIO"/>
  <uses-permission android:name="com.sec.android.settings.permission.SOFT_RESET"/>
  <uses-permission android:name="sec.android.permission.READ_MSG_PREF"/>
  <uses-permission android:name="com.samsung.android.scloud.backup.lib.read"/>

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:dist="http://schemas.android.com/apk/distribution"
   package="com.droi.adocker"
   platformBuildVersionCode="28"
   platformBuildVersionName="9"
   android:versionCode="1"
   android:versionName="1.1.3"
   android:compileSdkVersion="28"
   android:compileSdkVersionCodename="9">
  <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="28"/>
  <dist:module dist:instant="true"/>
  <!-- 查看网络连接 -->
  <uses-permission .="android.permission.ACCESS_NETWORK_STATE"/>
  <!-- 访问WiFi网络状态信息.-->
  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
  <!-- 拥有完全的网络访问权限 -->
  <uses-permission android:name="android.permission.INTERNET"/>
  <!-- 修改或删除您共享存储空间中的内容 -->
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  <!-- 读取您共享存储空间中的内容 -->
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
  <!-- 读取手机状态和身份 -->
  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
  <uses-permission android:name="com.huawei.authentication.HW_ACCESS_AUTH_SERVICE"/>
  <uses-permission android:name="com.samsung.svoice.sync.READ_DATABASE"/>
  <uses-permission android:name="com.samsung.svoice.sync.ACCESS_SERVICE"/>
  <uses-permission android:name="com.samsung.svoice.sync.WRITE_DATABASE"/>
  <uses-permission android:name="com.sec.android.app.voicenote.Controller"/>
  <uses-permission android:name="com.sec.android.permission.VOIP_INTERFACE"/>
  <uses-permission android:name="com.sec.android.permission.LAUNCH_PERSONAL_PAGE_SERVICE"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.READ_RECORD_AUDIO"/>
  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_RECORD_AUDIO"/>
  <uses-permission android:name="com.sec.android.settings.permission.SOFT_RESET"/>
  <uses-permission android:name="sec.android.permission.READ_MSG_PREF"/>
  <uses-permission android:name="com.samsung.android.scloud.backup.lib.read"/>

************************************************************************************************************

The modification steps are as follows: Extract the application or download the application to the phone storage. Continue to use mt manager as the operating tool. Click on the software and select View

After entering the apk. Open the rec folder 

Open all the folders headed by drawable. Generally, icons will be in these folders. Find pictures that are the same as the icons. If there are many of them in different folders, it is recommended to change them all. Click on the picture on the left and select decompression to go to the storage directory on the right. This can be decompressed by choosing any path.

Then we view the copied image files. You can see that its size is 108*108. If the replacement image is too large or too small. After replacement, the icons of the installed software may not be fully displayed. As for how to modify or compress the image size, these are the steps. Suggested search. There are many online gadgets on the Internet to compress image size.

Find an image you need to replace. It is recommended to modify it to the same size as the original file. The file name is changed the same. Look at the picture on the left and change the name to replace it.

Long press the picture on the right to bring up the menu and select Add

final effect

Tutorial summary: In the apk, general pictures exist in the folder headed by drawable. But some software's picture files are in other folders. This requires one-to-one comparison, replacement of all image files, and then re-signing. The purpose of storing the same icon image in different folders is to adapt to different resolution models after the software is installed. If you press operation to replace it, it will have no effect. Then it can only explain one problem. There are also fish that slipped through the net and the same icon image file has not been replaced.

There is also a simple way to quickly find the real path of the apk icon. First open AndroidManifest.xml and search for android:icon. He has already clearly written it to us. What is the name of the drawable image in res for this image? Or other paths
 

Explain next. There is a tool that can replace apk icons with one click for a similar purpose. The original intention of the tutorial is to let beginners manually understand the composition of apk and the direction that needs to be modified.

Guess you like

Origin blog.csdn.net/u011283906/article/details/134028920