首页
社区
课程
招聘
[原创]拨云见日:安卓APP脱壳的本质以及如何快速发现ART下的脱壳点
2019-9-19 17:52 60785

[原创]拨云见日:安卓APP脱壳的本质以及如何快速发现ART下的脱壳点

2019-9-19 17:52
60785
收藏
点赞31
打赏
分享
打赏 + 11.00雪花
打赏次数 4 雪花 + 11.00
 
赞赏  天道酬勤i   +2.00 2021/01/03 愿支付重金请教大佬教学。
赞赏  pansalily   +5.00 2019/09/24
赞赏  Editor   +2.00 2019/09/20 精品文章~
赞赏  kanxue   +2.00 2019/09/19 感谢分享~
最新回复 (83)
雪    币: 1671
活跃值: (3987)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
小黄鸭爱学习 2020-2-5 17:28
51
0
手上有一台pixel 请问是否能刷
雪    币: 174
活跃值: (3646)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
TUGOhost 2020-5-21 17:29
52
0
膜拜
雪    币: 1700
活跃值: (676)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
弱冠甕卿还仓 2020-6-18 19:20
53
0
菜年richor 同求模拟器怎么导入镜像
同求,模拟器怎么刷镜像
雪    币: 19786
活跃值: (4862)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
浅笑不语 2020-6-20 19:31
54
0
同问模拟器怎么使用
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_pojtejbw 2020-6-26 21:52
55
0
浅笑不语 同问模拟器怎么使用
同问模拟器怎么使用
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_pojtejbw 2020-6-26 21:52
56
0
弱冠甕卿还仓 同求,模拟器怎么刷镜像
同问模拟器怎么使用
雪    币: 784
活跃值: (280)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
李道臣 2020-6-27 20:16
57
0
感谢分享。
雪    币: 5
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
笨小孩xlz 2020-9-7 02:04
58
0
nb
雪    币: 42
活跃值: (286)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
IUnKnow 2020-11-4 10:53
59
0
感谢分享,后排膜拜
雪    币: 249
活跃值: (346)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hackevil 2020-11-4 13:41
60
0
像Android这种开源系统,脱壳感觉不神秘了,自己定制系统想咋整咋整
雪    币: 181
活跃值: (66)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
overlords 2021-1-12 23:45
61
0
 硬核大佬。
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-1-24 17:25
62
0
太强了
雪    币: 1
活跃值: (364)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
脱不了壳 2021-6-10 17:23
63
0
膜拜大佬
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-28 18:22
64
0
有个问题 模拟器镜像怎么刷呀 雷电模拟器没听说能自己刷镜像呀
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 17:34
65
0
这寒冰大佬公布的脱壳点有问题呀 一直报错:
/libartd_intermediates/interpreter/interpreter.P; rm -f out/host/linux-x86/obj/SHARED_LIBRARIES/libartd_intermediates/interpreter/interpreter.d )"
art/runtime/interpreter/interpreter.cc:301:17: error: ignoring return value of function declared with warn_unused_result attribute [-Werror,-Wunused-result]
                write(save_path_fd,(void*)begin,(int)size);
                ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
art/runtime/interpreter/interpreter.cc:287:8: error: ignoring return value of function declared with warn_unused_result attribute [-Werror,-Wunused-result]
       read(cmd_line_fd,process_name,256);
       ^~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
art/runtime/interpreter/interpreter.cc:272:29: error: calling function 'GetMethod' requires holding mutex 'mutator_lock_' [-Werror,-Wthread-safety-analysis]
   ArtMethod* art_method =  shadow_frame.GetMethod();
                            ^
art/runtime/interpreter/interpreter.cc:273:30: error: calling function 'GetDexFile' requires holding mutex 'mutator_lock_' [-Werror,-Wthread-safety-analysis]
   const DexFile* dex_file = art_method->GetDexFile();
                             ^
4 errors generated.
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 17:44
66
0
还剩这两个错误 不知所云·:
art/runtime/interpreter/interpreter.cc:301:17: error: ignoring return value of function declared with warn_unused_result attribute [-Werror,-Wunused-result]
                write(save_path_fd,(void*)begin,(int)size);
                ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
art/runtime/interpreter/interpreter.cc:287:8: error: ignoring return value of function declared with warn_unused_result attribute [-Werror,-Wunused-result]
       read(cmd_line_fd,process_name,256);
       ^~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:06
67
0
亲测:只要增加的脱壳代码中调用了 open write 等函数 make始终不通过 而且报错特别奇怪
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:06
68
0
Aborting thread:
"main" prio=5 tid=1 Runnable (still starting up)
  | group="" sCount=0 dsCount=0 obj=(nil) self=0x55c9ff60b990
  | sysTid=70575 nice=0 cgrp=default sched=0/0 handle=0x2ab3c0711340
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x7ffe2923a000-0x7ffe2923c000 stackSize=8MB
  | held mutexes= "abort lock" "linear alloc" "mutator lock"(shared held)
  native: (backtrace::Unwind failed for thread 70575: No map found)
  (no managed stack frames)
Dumping all threads without appropriate locks held: thread list lock
All threads:
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "linear alloc" (level DefaultMutexLevel - 35) while locking "thread list lock" (level ThreadListLock - 49)
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "abort lock" (level AbortLock - 5) while locking "thread list lock" (level ThreadListLock - 49)
DALVIK THREADS (8):
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "linear alloc" (level DefaultMutexLevel - 35) while locking "thread list lock" (level ThreadListLock - 49)
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "abort lock" (level AbortLock - 5) while locking "thread list lock" (level ThreadListLock - 49)
"main" prio=5 tid=1 Runnable (still starting up)
  | group="" sCount=0 dsCount=0 obj=(nil) self=0x55c9ff60b990
  | sysTid=70575 nice=0 cgrp=default sched=0/0 handle=0x2ab3c0711340
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x7ffe2923a000-0x7ffe2923c000 stackSize=8MB
  | held mutexes= "abort lock" "linear alloc" "mutator lock"(shared held)
  native: (backtrace::Unwind failed for thread 70575: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 0" prio=5 tid=2 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3c80008c0
  | sysTid=70584 nice=0 cgrp=default sched=0/0 handle=0x2ab3c7e29700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3c7d29000-0x2ab3c7d2b000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70584/stack)
  native: (backtrace::Unwind failed for thread 70584: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 1" prio=5 tid=3 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3d00008c0
  | sysTid=70585 nice=0 cgrp=default sched=0/0 handle=0x2ab3c7f2a700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3c7e2a000-0x2ab3c7e2c000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70585/stack)
  native: (backtrace::Unwind failed for thread 70585: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 3" prio=5 tid=4 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3d40008c0
  | sysTid=70587 nice=0 cgrp=default sched=0/0 handle=0x2ab3cc201700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3cc101000-0x2ab3cc103000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70587/stack)
  native: (backtrace::Unwind failed for thread 70587: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 4" prio=5 tid=5 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3d80008c0
  | sysTid=70588 nice=0 cgrp=default sched=0/0 handle=0x2ab3cc302700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3cc202000-0x2ab3cc204000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70588/stack)
  native: (backtrace::Unwind failed for thread 70588: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 2" prio=5 tid=6 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3dc0008c0
  | sysTid=70586 nice=0 cgrp=default sched=0/0 handle=0x2ab3cc100700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3cc000000-0x2ab3cc002000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70586/stack)
  native: (backtrace::Unwind failed for thread 70586: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 5" prio=5 tid=7 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3e00008c0
  | sysTid=70589 nice=0 cgrp=default sched=0/0 handle=0x2ab3cc403700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3cc303000-0x2ab3cc305000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70589/stack)
  native: (backtrace::Unwind failed for thread 70589: No map found)
  (no managed stack frames)

"Compiler driver thread pool worker thread 6" prio=5 tid=8 Native (still starting up)
  | group="" sCount=1 dsCount=0 obj=(nil) self=0x2ab3e40008c0
  | sysTid=70590 nice=0 cgrp=default sched=0/0 handle=0x2ab3cc504700
  | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
  | stack=0x2ab3cc404000-0x2ab3cc406000 stackSize=1028KB
  | held mutexes=
  kernel: (couldn't read /proc/self/task/70590/stack)
  native: (backtrace::Unwind failed for thread 70590: No map found)
  (no managed stack frames)

dex2oatd E 70575 70575 art/runtime/thread-inl.h:108] holding "linear alloc" at point where thread suspension is expected
dex2oatd E 70575 70575 art/runtime/thread-inl.h:108] holding "abort lock" at point where thread suspension is expected
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "linear alloc" (level DefaultMutexLevel - 35) while locking "mutator lock" (level MutatorLock - 60)
dex2oatd E 70575 70575 art/runtime/base/mutex-inl.h:92] Lock level violation: holding "abort lock" (level AbortLock - 5) while locking "mutator lock" (level MutatorLock - 60)
dex2oatd F 70575 70575 art/runtime/runtime_linux.cc:336]*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Fatal signal 6 (SIGABRT), code -6 (SI_TKILL)
OS: Linux 4.4.0-142-generic (x86_64)
Cmdline: out/host/linux-x86/bin/dex2oatd --runtime-arg -Xms64m --runtime-arg -Xmx64m --image-classes=frameworks/base/preloaded-classes --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/conscrypt_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-junit_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/voip-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/ims-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/apache-xml_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/org.apache.http.legacy.boot_intermediates/javalib.jar --dex-location=/system/framework/core-oj.jar --dex-location=/system/framework/core-libart.jar --dex-location=/system/framework/conscrypt.jar --dex-location=/system/framework/okhttp.jar --dex-location=/system/framework/core-junit.jar --dex-location=/system/framework/bouncycastle.jar --dex-location=/system/framework/ext.jar --dex-location=/system/framework/framework.jar --dex-location=/system/framework/telephony-common.jar --dex-location=/system/framework/voip-common.jar --dex-location=/system/framework/ims-common.jar --dex-location=/system/framework/apache-xml.jar --dex-location=/system/framework/org.apache.http.legacy.boot.jar --oat-symbols=out/target/product/bullhead/symbols/system/framework/arm/boot.oat --oat-file=out/target/product/bullhead/dex_bootjars/system/framework/arm/boot.oat --oat-location=/system/framework/arm/boot.oat --image=out/target/product/bullhead/dex_bootjars/system/framework/arm/boot.art --base=0x70000000 --instruction-set=arm --instruction-set-variant=cortex-a53.a57 --instruction-set-features=default --android-root=out/target/product/bullhead/system --include-patch-information --runtime-arg -Xnorelocate --no-generate-debug-info --multi-image --no-inline-from=core-oj.jar --generate-mini-debug-info --generate-mini-debug-info --compile-pic --compiled-classes=frameworks/base/compiled-classes-phone
Thread: 70575 "<unknown>"
Registers:
    rax: 0x0000000000000000    rbx: 0x00000000000113af    rcx: 0x00002ab3c1d3b3c9    rdx: 0x0000000000000006
    rdi: 0x00000000000113af    rsi: 0x00000000000113af    rbp: 0x00007ffe29a38430    rsp: 0x00007ffe29a383e8
    r8 : 0x000055c9fe450310    r9 : 0x000055c9fe450310    r10: 0x20726f746174756d    r11: 0x0000000000000246
    r12: 0x000055c9ff43e0c1    r13: 0x00007ffe29a38528    r14: 0x000055ca0027afa0    r15: 0x00000000000113af
    rip: 0x00002ab3c1d3b3c9    eflags: 0x00000246 [ PF ZF IF ]
     cs: 0x00000033     gs: 0x00000000     fs: 0x00000000

Backtrace:
       (backtrace::Unwind failed for thread 70575: No map found)
dex2oatd F 70575 70575 art/runtime/runtime_linux.cc:359]Fault message: /bin/bash: line 1: 70575 Aborted                 (core dumped) ( ANDROID_LOG_TAGS="*:e" out/host/linux-x86/bin/dex2oatd --runtime-arg -Xms64m --runtime-arg -Xmx64m --image-classes=frameworks/base/preloaded-classes --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/conscrypt_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/core-junit_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/voip-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/ims-common_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/apache-xml_intermediates/javalib.jar --dex-file=out/target/common/obj/JAVA_LIBRARIES/org.apache.http.legacy.boot_intermediates/javalib.jar --dex-location=/system/framework/core-oj.jar --dex-location=/system/framework/core-libart.jar --dex-location=/system/framework/conscrypt.jar --dex-location=/system/framework/okhttp.jar --dex-location=/system/framework/core-junit.jar --dex-location=/system/framework/bouncycastle.jar --dex-location=/system/framework/ext.jar --dex-location=/system/framework/framework.jar --dex-location=/system/framework/telephony-common.jar --dex-location=/system/framework/voip-common.jar --dex-location=/system/framework/ims-common.jar --dex-location=/system/framework/apache-xml.jar --dex-location=/system/framework/org.apache.http.legacy.boot.jar --oat-symbols=out/target/product/bullhead/symbols/system/framework/arm/boot.oat --oat-file=out/target/product/bullhead/dex_bootjars/system/framework/arm/boot.oat --oat-location=/system/framework/arm/boot.oat --image=out/target/product/bullhead/dex_bootjars/system/framework/arm/boot.art --base=0x70000000 --instruction-set=arm --instruction-set-variant=cortex-a53.a57 --instruction-set-features=default --android-root=out/target/product/bullhead/system --include-patch-information --runtime-arg -Xnorelocate --no-generate-debug-info --multi-image --no-inline-from=core-oj.jar --generate-mini-debug-info --generate-mini-debug-info --compile-pic --compiled-classes=frameworks/base/compiled-classes-phone )
ninja: build stopped: subcommand failed.
make: *** [ninja_wrapper] Error 1

#### make failed to build some targets (01:22 (mm:ss)) ####
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:13
69
0
万里星河 Aborting thread: "main" prio=5 tid=1 Runnable (still starting up) | group="" ...
不调用这些函数一切正常
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:14
70
0
万里星河 亲测:只要增加的脱壳代码中调用了 open write 等函数 make始终不通过 而且报错特别奇怪
不调用这些函数一切正常
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:28
71
0
卧槽 玄学了 为毛修改的函数居然在make的时候会自己执行呀?我无意间加了个printf 居然在make的过程中输出了 还输出了很多很多次 不应该啊卧槽 ./art/runtime/interpreter/interpreter.cc的Execute函数在make期间还会自己执行? 这尼玛
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:33
72
0
static inline JValue Execute(Thread* self,const DexFile::CodeItem* code_item,ShadowFrame& shadow_frame,JValue result_register,bool stay_in_interpreter = false) SHARED_REQUIRES (Locks::mutator_lock_) {
   //add my code start
   int pid = getpid();
   printf("pid:%d\n",pid);
   ArtMethod* art_method =  shadow_frame.GetMethod();
   const DexFile* dex_file = art_method->GetDexFile();
   //const uint8_t* Begin() const;
   const uint8_t* begin = dex_file->Begin();
   printf("begin:%p\n",begin);
   //size_t largest range of specific target
   //size_t Size() const;
   size_t size = dex_file->Size();
   printf("size:%d\n",(int)size);
   char* save_path = (char*)malloc(sizeof(char) * 1000);
   if(save_path != nullptr){
     char* cmd_line = (char*)malloc(sizeof(char) * 64);
     char* process_name = (char*)malloc(sizeof(char) * 128);
     sprintf(cmd_line,"/proc/%d/cmdline",pid);
     //int cmd_line_fd = open(cmd_line,O_RDONLY);
     free(cmd_line);
     free(process_name);
     //if(cmd_line_fd != -1){
       //int ret = read(cmd_line_fd,process_name,256);
       //printf("read bytes:%d",ret);
       //close(cmd_line_fd);
       //if(*process_name){
          //memset(save_path,0,1000);
          //sprintf(save_path,"/sdcard/%s_%d_dexfile.dex",process_name,(int)size);
          //free(process_name);
          //int save_path_fd = open(save_path,O_RDONLY,0666);
          //if(save_path_fd != -1){
             // close(save_path_fd);
              //free(save_path);  
         // }else{
              //save_path_fd = open(save_path,O_CREAT|O_APPEND|O_RDWR,0666);
              //free(save_path);
              //if(save_path_fd != -1){
                //if(write(save_path_fd,(char*)begin,(int)size) == (int)size){
                   //fsync(save_path_fd);
                   //close(save_path_fd);
                //}else{
                  // fsync(save_path_fd);
                   //close(save_path_fd);
               //}
             //}
         //}
       //}
    //}
  }
  //add my code end
}
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:37
73
0
[ 44% 179/402] build out/target/product/bullhead/obj/APPS/PrintSpooler_intermediates/oat/arm64/package.odex
pid:85847
begin:0x71718034
size:3557104
pid:85847
begin:0x71718034
size:3557104
pid:85847
begin:0x70dc5030
size:4021036
pid:85847
begin:0x70dc5030
size:4021036
[ 45% 181/402] build out/target/product/bullhead/obj/APPS/WAPPushManager_intermediates/oat/arm64/package.odex
pid:85913
begin:0x71718034
size:3557104
pid:85913
begin:0x71718034
size:3557104
pid:85913
begin:0x70dc5030
size:4021036
pid:85913
begin:0x70dc5030
size:4021036
[ 45% 183/402] build out/target/product/bullhead/obj/APPS/WallpaperBackup_intermediates/oat/arm64/package.odex
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:39
74
0
大概知道为啥了 这个编译好了在build的过程中居然真的会调用 从而去optimize系统自身的dex
雪    币: 62
活跃值: (528)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
万里星河 2021-9-29 19:40
75
0
那为啥加了open会编译不通过呀
游客
登录 | 注册 方可回帖
返回