Android Question webviewextras geolocation fatal signal problem

cengolo

Member
Licensed User
Longtime User
I kindly as your help for a problem i have with webviewextras. I develop a wrapper android app for a map application. i have a webview, added chrome client and enabled javascript. for testing purposes, the webview only loads maps.google.com page and whenever i press find user location in the page, the application exits with the error below. is this a common problem and do you know a solution to this?
basically what i need is to load a map app in the webview and find the geolocation of the user and show it on the map. i checked the examples and gave neccesary permissions in the manifest editor, but i still get this fatal signal



Build fingerprint: 'HUAWEI/LYA-L09/HWLYA:9/HUAWEILYA-L09/122C432R1:user/release-keys'
Revision: '0'
ABI: 'arm64'
pid: 12599, tid: 12599, name: b4a.example >>> b4a.example <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x1afff4
x0 0000000000000001 x1 000000782b729eb0 x2 000000783420a8f8 x3 ffffffffa39b3599
x4 000469567ac00000 x5 000000783436cfc8 x6 00000078d67f6000 x7 0000000003183518
x8 000000782b730cc0 x9 00000000001b000c x10 0000000000057e89 x11 00000000157648c2
x12 0000000000000016 x13 000000005c681307 x14 0000eecf29344fc8 x15 0000056c8cbffc72
x16 0000007835e3aee8 x17 00000078d18dd7b0 x18 000000001317f348 x19 00000078500c1e60
x20 00000078500c1f08 x21 0000000000000000 x22 000000782b729eb0 x23 000000782b729e98
x24 0000000000000051 x25 0000007fd6577aa8 x26 0000000000000002 x27 0000000000000001
x28 0000000000000051 x29 0000007fd6577c00
sp 0000007fd6577a60 lr 00000078d2397234 pc 00000078d2397248
backtrace:
#00 pc 0000000000014248 /system/lib64/libutils.so (android::Looper::pollInner(int)+880)
#01 pc 0000000000013e3c /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+60)
#02 pc 0000000000129aec /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
#03 pc 000000000042835c /system/framework/arm64/boot-framework.oat (offset 0x413000) (android.media.MediaExtractor.seekTo [DEDUPED]+140)
#04 pc 0000000000bb2d34 /system/framework/arm64/boot-framework.oat (offset 0x413000) (android.os.MessageQueue.next+276)
#05 pc 0000000000bafc88 /system/framework/arm64/boot-framework.oat (offset 0x413000) (android.os.Looper.loop+712)
#06 pc 0000000000947af4 /system/framework/arm64/boot-framework.oat (offset 0x413000) (android.app.ActivityThread.main+1236)
#07 pc 000000000056f24c /system/lib64/libart.so (art_quick_invoke_static_stub+604)
#08 pc 00000000000d4224 /system/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+232)
#09 pc 0000000000472f60 /system/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
#10 pc 00000000004749b4 /system/lib64/libart.so (art::InvokeMethod(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+1440)
#11 pc 0000000000404338 /system/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*)+52)
#12 pc 00000000001456d4 /system/framework/arm64/boot.oat (offset 0x13b000) (java.lang.Class.getDeclaredMethodInternal [DEDUPED]+180)
#13 pc 0000000000ed9d48 /system/framework/arm64/boot-framework.oat (offset 0x413000) (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+136)
#14 pc 0000000000ee0c1c /system/framework/arm64/boot-framework.oat (offset 0x413000) (com.android.internal.os.ZygoteInit.main+2540)
#15 pc 000000000056f24c /system/lib64/libart.so (art_quick_invoke_static_stub+604)
#16 pc 00000000000d4224 /system/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+232)
#17 pc 0000000000472f60 /system/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
#18 pc 0000000000472bc0 /system/lib64/libart.so (art::InvokeWithVarArgs(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+424)
#19 pc 0000000000367254 /system/lib64/libart.so (art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+652)
#20 pc 00000000000b9210 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+120)
#21 pc 00000000000bbe34 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+780)
#22 pc 0000000000002368 /system/bin/app_process64 (main+1444)
#23 pc 00000000000adf40 /system/lib64/libc.so (__libc_init+88)
 

DonManfred

Expert
Licensed User
Longtime User
On Android you should use native GoogleMaps instead of a Webview with a Map.
 
Upvote 0

cengolo

Member
Licensed User
Longtime User
unfortunately, if i use them, dont i have to purchase an api key and pay google for each transaction?
 
Upvote 0

DonManfred

Expert
Licensed User
Longtime User
Native Android GoogleMaps and using Markers, Polygons and so on are free.
This is not true for the Javascript GoogleMaps which you want to implement. Here you need to have a Apikey. Check Googles Documentation about their plans to find out more. I can´t remember the link but it should be possible to find using Google or the forumsearch.

You need to have a Apikey if you want to use any Api from google though (Direction, Places and so on).
 
Upvote 0
Top