Problem Reporting¶
Problem Reporting Routes¶
If you encounter a problem with EasyAR Sense, you can search FAQs.
If you can not find it in FAQs, you can search Q&A . If there is no related problem, or the problem is not solved, please ask a question in Q&A.
If the problem involves sensitive information such as your EasyAR developer account or cloud service tokens, please contact us via the customer service email address in Contact Us .
Information Required for Problem Reporting¶
EasyAR Sense version
After calling Engine.initialize , the version number will be printed in console log, as follows
EasyAR Sense (Windows-x86_64) Version 4.4.0.9251-e69a7c46b
Problem reproduction steps. If the problem can not be triggered consistently, please give a clear indication.
Crash reason, code call stack and dynamic library load address, if the problem is a crash.
Retrieval method differs depending on operating systems and development environments. We will describe them below individually.
With the use of address space layout randomization(ASLR) in modern operating systems, load addresses of dynamic libraries will vary between runs, thus code call stack and dynamic library load address need to be retrieved in the same run.
If the code call stack does not refer to EasyAR library, it probably indicates that the problem does not lie in EasyAR Sense.
Crash Information on Windows¶
The information when debugging with Visual Studio is as below.
The crash reason is
Exception thrown at 0x00007FFB7747317B (EasyAR.dll) in HelloAR.exe: 0xC0000005: Access violation writing location 0x0000000000009C40.
The code call stack is
> EasyAR.dll!00007ffb7747317b() Unknown
EasyAR.dll!00007ffb774719cc() Unknown
EasyAR.dll!00007ffb77477db3() Unknown
EasyAR.dll!00007ffb77474eb3() Unknown
ucrtbase.dll!00007ffbfee910b2() Unknown
kernel32.dll!00007ffc009f7c24() Unknown
ntdll.dll!00007ffc0148d721() Unknown
The dynamic library load address is
0x00007FFB75BC0000
Crash Information on Android¶
To debug a native program in Android Studio, it is required to set Debugger - Debug type to Dual (Java + Native) in Configuration.
The information when debugging with Android Studio is as below.
Input ‘bt’ in lldb to get crash reason and code call stack, as below.
(lldb) bt
* thread #16, name = 'samples.helloar', stop reason = signal SIGSEGV: invalid address (fault address: 0x9c40)
* frame #0: 0x0000004922f3a1d8 libEasyAR.so`___lldb_unnamed_symbol3056$$libEasyAR.so + 6088
frame #1: 0x0000004922f38568 libEasyAR.so`___lldb_unnamed_symbol3054$$libEasyAR.so + 288
frame #2: 0x0000004922f347f8 libEasyAR.so`___lldb_unnamed_symbol2876$$libEasyAR.so + 332
frame #3: 0x00000049be2390c8 libc.so`__pthread_start(void*) + 40
frame #4: 0x00000049be1f04f8 libc.so`__start_thread + 72
Input ‘image dump sections libEasyAR.so’ in lldb to get load address of section .text of the dynamic library, as below.
(lldb) image dump sections libEasyAR.so
...
SectID Type Load Address Perm File Off. File Size Flags Section Name
...
0x00000010 code [0x0000004922e30cfc-0x0000004923654558) r-x 0x00256cfc 0x0082385c 0x00000006 libEasyAR.so..text
...
Crash Information on MacOS/iOS¶
The information when debugging with XCode is as below.
Input ‘bt’ in lldb to get crash reason and code call stack, as below.
(lldb) bt
* thread #11, stop reason = EXC_BAD_ACCESS (code=1, address=0x9c40)
* frame #0: 0x00000001057e7cb0 easyar`___lldb_unnamed_symbol2693$$easyar + 6984
frame #1: 0x00000001057e5e14 easyar`___lldb_unnamed_symbol2692$$easyar + 276
frame #2: 0x00000001057e2500 easyar`___lldb_unnamed_symbol2532$$easyar + 360
frame #3: 0x00000001f3d60bfc libsystem_pthread.dylib`_pthread_start + 320
Input ‘image list easyar’ or ‘image list libEasyAR.dylib’ in lldb to get the dynamic library load address, as below.
(lldb) image list easyar
[ 0] DF06BDD8-A8AF-3982-897D-A906EE229A4F 0x0000000105730000 /Users/<user>/Library/Developer/Xcode/DerivedData/helloar-bpvpobshgxnnwwdiryfjufioysag/Build/Products/Debug-iphoneos/helloar.app/Frameworks/easyar.framework/easyar