(十六)、反汇编unity il2cpp apk

unity apk会出现两种情况,

1、解压后asset->bin->Data->Managed中有很多dll,这是用unity mono打包的,直接用dnspy/Reflector等工具打开Assembly-CSharp.dll即可

2、解压后asset->bin->Data->Managed中有3个文件夹etc、Metadata、Resources,这是使用unity新版的il2cpp模式打包的,使用以下流程破解(破解后的Assembly-CShapr.dll依旧无法看到代码,会被转成16进制文件存储,反编译好像没什么意义,当然小部分项目由于使用的unity版本过旧依旧可以查看代码,可以先查看下apk使用的unity版本再决定是否需要反汇编)

 

 

 

1、下载il2cppDumper,下载地址https://github.com/Perfare/Il2CppDumper(下载最新版,旧版可能出现各种问题,本人使用5.0.0版本)

2、将应用apk重命名,后缀名为.rar,并解压

3、运行il2CppDumper.exe

4、在apk解压的文件夹中,找到asset->bin->Data,随便用文本框打开一个文件,可以看到一堆乱码,但第一行会有几个数字

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Unity中使用IL2CPP编译器时,由于其将C#代码转换为C++代码,因此无法直接使用System.Diagnostics.Process类来获取进程信息。不过,你可以考虑使用Unity的底层API来实现获取进程信息的功能。具体来说,你可以使用以下代码来获取当前VsCode进程: ```csharp #if UNITY_IOS || UNITY_ANDROID || UNITY_WEBGL // iOS、Android和WebGL平台下无法使用Process类,需要使用底层API using System.Runtime.InteropServices; using AOT; // 定义Interop类 public static class Interop { // 导入底层API [DllImport("__Internal")] private static extern int GetProcessId(string processName); [MonoPInvokeCallback(typeof(Func<int, int>))] public static int OnGetProcessId(int processId) { // 在这里可以进行一些操作,比如获取进程ID、关闭进程等 // ... return 0; } // 定义C#方法 public static void GetProcessInfo(string processName) { // 调用底层API GetProcessId(processName); } } #else // Windows和macOS平台下可以使用Process类 using System.Diagnostics; // 获取当前VsCode进程 Process[] processes = Process.GetProcessesByName("Code"); // 遍历所有找到的进程 foreach (Process process in processes) { // 判断进程是否已退出 if (!process.HasExited) { // 如果进程未退出,则表示找到了当前VsCode进程 // 在这里可以进行一些操作,比如获取进程ID、关闭进程等 int processId = process.Id; // ... } } #endif ``` 该代码使用底层API来获取进程信息,对于iOS、Android和WebGL平台,你需要使用DllImport特性来导入底层API。在底层API中,你可以使用C++代码来实现获取进程信息的功能。在C#代码中,你可以在底层API中定义一个回调函数,用于接收底层API返回的进程ID,并在回调函数中进行相应的操作。需要注意的是,在iOS平台下,你需要将回调函数标记为MonoPInvokeCallback特性。在Windows和macOS平台下,可以使用Process类来获取进程信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值