雷电模拟器 更新so和bin文件夹之后无法正常进入
软件版本 Unity 2017.4.40f1 海外版本 打包方式 导出gradle工程进行打包 aab apk测试结果一样 ndk版本 ndk13b java版本 jdk1.8.0_191 jre1.8.0_191 bin/ 资源分布策略 分别放在base.apk和 资源apk中 都试了 表现一致
雷电模拟器版本 3.113 和 3.118 【表现一致】 其他设备是否正常(蓝叠正常 小米正常 华为设备正常 腾讯模拟器重启几次之后正常 其他未尝试) 安装架构测试 x86 和 armv7a 都测试过 表现一致 雷电不支持arm64 其他尝试用了最新的bin/和so文件 同理强制去下载服务器的bin和so 可以正常进入
初始化代码 onCreate 调用 Log.e("path1==============", getApplication().getApplicationContext().getFilesDir().getAbsolutePath()); Log.e("path2==============", getApplication().getApplicationContext().getFilesDir().getPath()); Boostrap.InitNativeLibBeforeUnityPlay(getApplication().getApplicationContext().getFilesDir().getPath());
附录日志:括号表示节点或者说明 【首次启动 追加初始化传入的目录字符串】 E/path1==============( 4312): /data/data/com.test.google/files E/path2==============( 4312): /data/data/com.test.google/files E/il2cpp ( 4312): [b7ffeea0]data file path1:/data/data/com.test.google/files E/il2cpp ( 4312): [b7ffeea0]data file path2:/data/data/com.test.google/files E/il2cpp ( 4312): [b7ffeea0]can't read file:2[/data/data/com.test.google/files/user.db] E/il2cpp ( 4312): [b7ffeea0]bootstrap running without patch
W/Process ( 1530): Unable to open /proc/4365/status
W/ActivityManager( 1530): Failed setting process group of 1907 to 0 W/System.err( 1530): java.lang.SecurityException: No permission to modify given thread W/System.err( 1530): at android.os.Process.setProcessGroup(Native Method) W/System.err( 1530): at com.android.server.am.ActivityManagerService.applyOomAdjLocked(ActivityManagerService.java:18207) W/System.err( 1530): at com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:18586) W/System.err( 1530): at com.android.server.am.ActivityManagerService.trimApplications(ActivityManagerService.java:18875) W/System.err( 1530): at com.android.server.am.ActivityStackSupervisor.activityIdleInternalLocked(ActivityStackSupervisor.java:2374) W/System.err( 1530): at com.android.server.am.ActivityManagerService.activityIdle(ActivityManagerService.java:6205) W/System.err( 1530): at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:495) W/System.err( 1530): at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2221) W/System.err( 1530): at android.os.Binder.execTransact(Binder.java:446)
D/sensor_ld( 1530): cb_setDelay handle=0 delay-ns=200000000 D/sensor_ld( 1530): cb_setDelay handle=0 delay-ns=200000000
W/ActivityManager( 1530): Failed setting process group of 1809 to 0 W/System.err( 1530): java.lang.SecurityException: No permission to modify given thread W/System.err( 1530): at android.os.Process.setProcessGroup(Native Method) W/System.err( 1530): at com.android.server.am.ActivityManagerService.applyOomAdjLocked(ActivityManagerService.java:18207) W/System.err( 1530): at com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:18586) W/System.err( 1530): at com.android.server.am.ActivityManagerService.removeContentProvider(ActivityManagerService.java:9662) W/System.err( 1530): at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:871) W/System.err( 1530): at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2221) W/System.err( 1530): at android.os.Binder.execTransact(Binder.java:446) E/WifiStateMachine( 1530): WifiStateMachine CMD_START_SCAN source -2 txSuccessRate=0.00 rxSuccessRate=0.00 targetRoamBSSID=00:81:00:0e:db:77 RSSI=-45
文件下载和准备完毕 开始调用 use_data_dir
E/il2cpp ( 4312): [b4456080]copy /storage/emulated/0/Android/data/com.test.google/files/RAssets/_soup/82746/libil2cpp.so.new to /data/data/com.test.google/files/libil2cpp.so.new 【自己追加了部分日志和一些输出】 E/il2cpp ( 4312): [b4456080]found_path:/data/app/com.test.google-1/split_asset_pack.apk I/il2cpp ( 4312): [b4456080]/data/app/com.test.google-1/split_asset_pack.apk contains path:assets/bin/Data/ E/il2cpp ( 4312): [b4456080]found_path:/data/app/com.test.google-1/base.apk I/il2cpp ( 4312): [b4456080]/data/app/com.test.google-1/base.apk doesn't contains path:assets/bin/Data/ E/il2cpp ( 4312): [b4456080]found_path:/data/app/com.test.google-1/split_config.x86.apk I/il2cpp ( 4312): [b4456080]/data/app/com.test.google-1/split_config.x86.apk doesn't contains path:assets/bin/Data/ E/il2cpp ( 4312): [b4456080]found_path:/data/app/com.test.google-1/base.apk I/il2cpp ( 4312): [b4456080]/data/app/com.test.google-1/base.apk doesn't contains path:assets/bin/Data/ E/il2cpp ( 4312): [b4456080]bootstrap apk_path_string :/data/app/com.test.google-1/split_asset_pack.apk E/il2cpp ( 4312): [b4456080]bootstrap bundle_id :com.test.google I/il2cpp ( 4312): [b4456080]patch file:[/storage/emulated/0/Android/data/com.test.google/files/RAssets/_soup/82746/assets_bin_Data/globalgamemanagers.assets.split0.bin] I/il2cpp ( 4312): [b4456080]patch file:[/storage/emulated/0/Android/data/com.test.google/files/RAssets/_soup/82746/assets_bin_Data/65ca32170bb371f459991a5d7696a9ba.bin] 【干掉了部分 patch file 日志】
I/ActivityManager( 1530): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10008000 cmp=com.test.google/com.test.LZ.UnityPlayerActivity} from uid 10047 on display 0 I/HostConnection( 1530): HostConnection::HostConnection: pid=1530, tid=1843, this=0x9f147060 I/ ( 1530): fastpipe: Connect success 【调用重启】 I/art ( 4312): System.exit called, status: 0 I/AndroidRuntime( 4312): VM exiting with result code 0, cleanup skipped. I/WindowState( 1530): WIN DEATH: Window{e4f0b1d u0 SurfaceView} W/MediaFocusControl( 1530): AudioFocus audio focus client died I/MediaFocusControl( 1530): AudioFocus removeFocusStackEntry(): removing entry for android.os.BinderProxy@5145bfd I/WindowState( 1530): WIN DEATH: Window{ae5e5c7 u0 com.test.google/com.test.LZ.UnityPlayerActivity} D/sensor_ld( 1530): cb_activate handle=0 enabled=0 I/art ( 2113): Ignoring second debugger -- accepting and dropping I/ActivityManager( 1530): Process com.test.google (pid 4312) has died I/art ( 1826): Ignoring second debugger -- accepting and dropping I/art ( 2178): Ignoring second debugger -- accepting and dropping I/ActivityManager( 1530): Start proc 4398:com.test.google/u0a47 for activity com.test.google/com.test.LZ.UnityPlayerActivity I/art ( 1996): Ignoring second debugger -- accepting and dropping I/art ( 4398): Late-enabling -Xcheck:jni D/libnativebridge( 4398): call UnloadNativeBridge! state=1 I/art ( 1809): Ignoring second debugger -- accepting and dropping I/art ( 2226): Ignoring second debugger -- accepting and dropping D/sensor_ld( 1530): cb_activate handle=0 enabled=1 D/sensor_ld( 1530): cb_setDelay handle=0 delay-ns=200000000 I/art ( 1907): Ignoring second debugger -- accepting and dropping D/EGL_adreno( 1631): eglMakeCurrent: 0xa4c56700: ver 3 1 (tinfo 0xa4c31e20) I/HostConnection( 1907): HostConnection::~HostConnection, pid=1907, tid=2091, this=0xa5382f10, m_stream=0xa5384000 I/ ( 1907): fastpipe: close connect I/art ( 1942): Ignoring second debugger -- accepting and dropping
I/kk ( 4398): onCreate:com.test.LZ.MyApplication@2166ae02 E/push ( 4398): PushClient default! no code for init! I/art ( 1530): Ignoring second debugger -- accepting and dropping 【java onCreate 函数调用 输出传入的路径】 E/path1==============( 4398): /data/data/com.test.google/files E/path2==============( 4398): /data/data/com.test.google/files E/il2cpp ( 4398): [b7ffeea0]data file path1:/data/data/com.test.google/files E/il2cpp ( 4398): [b7ffeea0]data file path2:/data/data/com.test.google/files
E/il2cpp ( 4398): [b7ffeea0]cached data path:/storage/emulated/0/Android/data/com.test.google/files/RAssets/_soup/82746 E/il2cpp ( 4398): [b7ffeea0]cached apk_path_string:/data/app/com.test.google-1/split_asset_pack.apk E/il2cpp ( 4398): [b7ffeea0]cached bundle_id:com.test.google E/il2cpp ( 4398): [b7ffeea0]rename /data/data/com.test.google/files/libil2cpp.so.new to /data/data/com.test.google/files/libil2cpp.so E/il2cpp ( 4398): [b7ffeea0]bootstrap running x86 with apk_path:[/data/app/com.test.google-1/split_asset_pack.apk], patch_so:[/data/data/com.test.google/files/libil2cpp.so], patch_dir:[/storage/emulated/0/Android/data/com.test.google/files/RAssets/_soup/82746] E/il2cpp ( 4398): [b7ffeea0]bootstrap running with patch:/data/data/com.test.google/files/libil2cpp.so
【日志追加输出】 E/il2cpp ( 4398): [b4456300]shadow apk in fopen: /data/app/com.test.google-1/split_asset_pack.apk, fd:0x00000028, file*: 0xb7def2f4 E/il2cpp ( 4398): [b4456300]shadow apk in open: /data/app/com.test.google-1/split_asset_pack.apk, fd:0x0000002c, file*: 0xb7def39c I/Unity ( 4398): SystemInfo CPU = Intel x86 SSE3, Cores = 1, Memory = 3036mb I/Unity ( 4398): ApplicationInfo com.test.google version 1.0 build 995f825a-9b86-49b6-802a-1c42270df513 I/Unity ( 4398): Built from '2017.4/staging' branch, Version '2017.4.40f1 (6e14067f8a9a)', Build type 'Release', Scripting Backend 'il2cpp' E/il2cpp ( 4398): [b4456300]redirect to /data/data/com.test.google/files/libil2cpp.so E/il2cpp ( 4398): [b4456300]shadow apk in fopen: /data/app/com.test.google-1/split_asset_pack.apk, fd:0x00000028, file*: 0xb7def2f4 E/il2cpp ( 4398): [b4456300]shadow apk in fopen: /data/app/com.test.google-1/split_asset_pack.apk, fd:0x00000028, file*: 0xb7def2f4 E/il2cpp ( 4398): [b4456300]shadow apk in fopen: /data/app/com.test.google-1/split_asset_pack.apk, fd:0x00000028, file*: 0xb7def2f4 【省略部分日志】
【发生黑屏不继续执行下去】 E/CRASH ( 4398): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 000000b1 E/CRASH ( 4398): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** E/CRASH ( 4398): Build fingerprint: 'asus/android_x86/x86:5.1.1/LMY49I/V9.5.3.0.LACCNFA:user/release-keys' E/CRASH ( 4398): Revision: '0' E/CRASH ( 4398): pid: 4398, tid: 4420, name: UnityMain >>> com.test.google <<< E/CRASH ( 4398): eax 9fb8bcb8 ebx 9faca150 ecx 9fbb0630 edx 00000000 E/CRASH ( 4398): esi 00000000 edi 000b0fc8 E/CRASH ( 4398): xcs 00000073 xds 0000007b xes ffff007b xfs c161006f xss 0000007b E/CRASH ( 4398): eip 9cea1633 ebp 9bf9fdc0 esp a34a3780 flags 00210296 E/CRASH ( 4398): E/CRASH ( 4398): backtrace: E/CRASH ( 4398): #00 pc 01254633 /data/app/com.test.google-1/lib/x86/libil2cpp.so E/CRASH ( 4398): #01 pc 000000e8 <unknown/absolute> F/MessageQueue( 4398): IdleHandler threw exception F/MessageQueue( 4398): java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 000000b1 F/MessageQueue( 4398): Build fingerprint: 'asus/android_x86/x86:5.1.1/LMY49I/V9.5.3.0.LACCNFA:user/release-keys' F/MessageQueue( 4398): Revision: '0' F/MessageQueue( 4398): pid: 4398, tid: 4420, name: UnityMain >>> com.test.google <<< F/MessageQueue( 4398): F/MessageQueue( 4398): at libil2cpp.01254633(Native Method) F/MessageQueue( 4398): at Unknown.000000e8(Unknown Source)
D/ld_audio_hw( 1360): lineFun, out_standby D/ld_audio_hw( 1360): ld_close_output_stream, dev=0xb6075240, stream =0xb604a660 D/ld_audio_hw( 1360): ld_close_output_stream, stream=0xb604a660, success! W/ProcessCpuTracker( 1530): Skipping unknown process pid 4398 D/EGL_adreno( 1631): eglMakeCurrent: 0xa4c56700: ver 3 1 (tinfo 0xa4c31e20)