background
Due to the recent need to learn from (π) about a company’s product interaction, have to take out a set of dynamic debugging slip, long time did not do, hand some raw, record the process to memo, this article is pure running account, hidden the technical details, do not like spray.
shell
Since the bags in our market are signed by Apple (shell), they need to be unshelled if you want to do dynamic debugging. There are many ways to unshell, such as Clutch, Dumpdecrypted, Frida and so on. There is a basic requirement is the need for yue prison equipment, of course, this year, this is relatively simple, install a checkRA1N can easily fix.
In the actual operation process, through the first two ways out of the package has been unable to carry out dynamic debugging, the main problem is that the dynamic library Framework is not removed successfully, through the third way to succeed.
At this point, you get the xxxx. IPA package.
re-sign
Re-signing is a necessary part of debugging, otherwise you will not be able to install the phone. Re-signing also has a corresponding script for easy operation.
- New project
- Configure your
Run Script
Writing:${SRCROOT}/sign.sh
- will
sign.sh
The files are placed in the project directory - will
XXXX.ipa
In the projectapp
δΈ
That’s it. Just run it.
Note in this step that some apps will validate the bundle ID, so it is best to keep the original package name.
#Here is just the re-sign code, which is quite simple: re-sign the third-party FrameWorksTARGET_APP_FRAMEWORKS_PATH="$TARGET_APP_PATH/Frameworks" if [ -d "$TARGET_APP_FRAMEWORKS_PATH" ]; then for FRAMEWORK in "$TARGET_APP_FRAMEWORKS_PATH/"* do /usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY" "$FRAMEWORK" done fiCopy the code
debugging
At this point, if all goes well, you are ready to attach debugServer debugging.
Post 2 desensitization screenshot
This circular reference needs to be dealt with π
The interface is still very refined π€
Thank you for the development of students, for us to bring so many good software π.