use ExAndroidNativeEmu to emulate dy 23.3.0 for X-Medusa and X-Helios
- git clone https://github.com/maiyao1988/ExAndroidNativeEmu
- download dy233.apk from wandoujia
- apktool d dy233.apk, get the libmetasec_ml.so from apk
- place "libmetasec_ml.so" in the relative directory "vfs/data/data/com.ss.android.ugc.aweme/"
- place "example_dy233.py" in the directory of project
- modify the function
get_object_ref_type
in "androidemu/java/jni_env.py"
before:
def get_object_ref_type(self, mu, env):
raise NotImplementedError()
after:
def get_object_ref_type(self, mu, env):
return 0
- modify the code in "scheduler.py"
before:
if self.__pid not in self.__tasks_map:
#主线程退出,退出调度循环
logging.debug("main_thead tid [%d] exit exec return"%self.__pid)
if (clear_task_when_return):
#clear all unfinished task
self.__tasks_map.clear()
return
after:
if self.__pid not in self.__tasks_map:
#主线程退出,退出调度循环
logging.debug("main_thead tid [%d] exit exec return"%self.__pid)
if (clear_task_when_return):
#clear all unfinished task
self.__tasks_map.clear()
self.__ordered_tasks_list.clear()
return
- python3 example_dy233.py