Wednesday 15 January 2014

WebView in android wear is giving errors when running -



WebView in android wear is giving errors when running -

i trying create web browser android wear , using android studio. code inflating.

@override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_my); final watchviewstub stub = (watchviewstub) findviewbyid(r.id.watch_view_stub); stub.setonlayoutinflatedlistener(new watchviewstub.onlayoutinflatedlistener() { @override public void onlayoutinflated(watchviewstub stub) { webview = (webview)findviewbyid(r.id.wvbrowser); //this set javascript enabled. webview.getsettings().setjavascriptenabled(true); //loading url google.com webview.loadurl("https://www.google.com"); webview.getsettings().setloadwithoverviewmode(true); webview.getsettings().setusewideviewport(true); webview.setwebviewclient(new webviewclient() { public void onreceivederror(webview view, int errorcode, string description, string failingurl) { toast.maketext(getapplicationcontext(), "oh no! " + description, toast.length_short).show(); } });

the total error below:

android.view.inflateexception: binary xml file line #11: error inflating class android.webkit.webview @ android.view.layoutinflater.createview(layoutinflater.java:620) @ com.android.internal.policy.impl.phonelayoutinflater.oncreateview(phonelayoutinflater.java:57) @ android.view.layoutinflater.oncreateview(layoutinflater.java:669) @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:694) @ android.view.layoutinflater.rinflate(layoutinflater.java:755) @ android.view.layoutinflater.inflate(layoutinflater.java:492) @ android.view.layoutinflater.inflate(layoutinflater.java:397) @ android.view.layoutinflater.inflate(layoutinflater.java:353) @ android.support.wearable.view.watchviewstub.inflate(watchviewstub.java:131) @ android.support.wearable.view.watchviewstub.onmeasure(watchviewstub.java:141) @ android.view.view.measure(view.java:16648) @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125) @ android.widget.framelayout.onmeasure(framelayout.java:310) @ android.view.view.measure(view.java:16648) @ android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125) @ android.widget.framelayout.onmeasure(framelayout.java:310) @ com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2338) @ android.view.view.measure(view.java:16648) @ android.view.viewrootimpl.performmeasure(viewrootimpl.java:1959) @ android.view.viewrootimpl.measurehierarchy(viewrootimpl.java:1145) @ android.view.viewrootimpl.performtraversals(viewrootimpl.java:1340) @ android.view.viewrootimpl.dotraversal(viewrootimpl.java:1032) @ android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:5657) @ android.view.choreographer$callbackrecord.run(choreographer.java:761) @ android.view.choreographer.docallbacks(choreographer.java:574) @ android.view.choreographer.doframe(choreographer.java:544) @ android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:747) @ android.os.handler.handlecallback(handler.java:733) @ android.os.handler.dispatchmessage(handler.java:95) @ android.os.looper.loop(looper.java:136) @ android.app.activitythread.main(activitythread.java:5026) @ java.lang.reflect.method.invokenative(native method) @ java.lang.reflect.method.invoke(method.java:515) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:777) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:602) @ dalvik.system.nativestart.main(native method) caused by: java.lang.reflect.invocationtargetexception @ java.lang.reflect.constructor.constructnative(native method) @ java.lang.reflect.constructor.newinstance(constructor.java:423) @ android.view.layoutinflater.createview(layoutinflater.java:594)             at com.android.internal.policy.impl.phonelayoutinflater.oncreateview(phonelayoutinflater.java:57)             at android.view.layoutinflater.oncreateview(layoutinflater.java:669)             at android.view.layoutinflater.createviewfromtag(layoutinflater.java:694)             at android.view.layoutinflater.rinflate(layoutinflater.java:755)             at android.view.layoutinflater.inflate(layoutinflater.java:492)             at android.view.layoutinflater.inflate(layoutinflater.java:397)             at android.view.layoutinflater.inflate(layoutinflater.java:353)             at android.support.wearable.view.watchviewstub.inflate(watchviewstub.java:131)             at android.support.wearable.view.watchviewstub.onmeasure(watchviewstub.java:141)             at android.view.view.measure(view.java:16648)             at android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125)             at android.widget.framelayout.onmeasure(framelayout.java:310)             at android.view.view.measure(view.java:16648)             at android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125)             at android.widget.framelayout.onmeasure(framelayout.java:310)             at com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2338)             at android.view.view.measure(view.java:16648)             at android.view.viewrootimpl.performmeasure(viewrootimpl.java:1959)             at android.view.viewrootimpl.measurehierarchy(viewrootimpl.java:1145)             at android.view.viewrootimpl.performtraversals(viewrootimpl.java:1340)             at android.view.viewrootimpl.dotraversal(viewrootimpl.java:1032)             at android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:5657)             at android.view.choreographer$callbackrecord.run(choreographer.java:761)             at android.view.choreographer.docallbacks(choreographer.java:574)             at android.view.choreographer.doframe(choreographer.java:544)             at android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:747)             at android.os.handler.handlecallback(handler.java:733)             at android.os.handler.dispatchmessage(handler.java:95)             at android.os.looper.loop(looper.java:136)             at android.app.activitythread.main(activitythread.java:5026)             at java.lang.reflect.method.invokenative(native method)             at java.lang.reflect.method.invoke(method.java:515)             at com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:777)             at com.android.internal.os.zygoteinit.main(zygoteinit.java:602)             at dalvik.system.nativestart.main(native method) caused by: java.lang.unsupportedoperationexception @ com.android.webview.nullwebview.nullwebviewfactoryprovider.createwebview(nullwebviewfactoryprovider.java:41) @ android.webkit.webview.ensureprovidercreated(webview.java:2062) @ android.webkit.webview.setoverscrollmode(webview.java:2120) @ android.view.view.<init>(view.java:3461) @ android.view.view.<init>(view.java:3517) @ android.view.viewgroup.<init>(viewgroup.java:470) @ android.widget.absolutelayout.<init>(absolutelayout.java:52) @ android.webkit.webview.<init>(webview.java:498) @ android.webkit.webview.<init>(webview.java:475) @ android.webkit.webview.<init>(webview.java:455) @ android.webkit.webview.<init>(webview.java:444)             at java.lang.reflect.constructor.constructnative(native method)             at java.lang.reflect.constructor.newinstance(constructor.java:423)             at android.view.layoutinflater.createview(layoutinflater.java:594)             at com.android.internal.policy.impl.phonelayoutinflater.oncreateview(phonelayoutinflater.java:57)             at android.view.layoutinflater.oncreateview(layoutinflater.java:669)             at android.view.layoutinflater.createviewfromtag(layoutinflater.java:694)             at android.view.layoutinflater.rinflate(layoutinflater.java:755)             at android.view.layoutinflater.inflate(layoutinflater.java:492)             at android.view.layoutinflater.inflate(layoutinflater.java:397)             at android.view.layoutinflater.inflate(layoutinflater.java:353)             at android.support.wearable.view.watchviewstub.inflate(watchviewstub.java:131)             at android.support.wearable.view.watchviewstub.onmeasure(watchviewstub.java:141)             at android.view.view.measure(view.java:16648)             at android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125)             at android.widget.framelayout.onmeasure(framelayout.java:310)             at android.view.view.measure(view.java:16648)             at android.view.viewgroup.measurechildwithmargins(viewgroup.java:5125)             at android.widget.framelayout.onmeasure(framelayout.java:310)             at com.android.internal.policy.impl.phonewindow$decorview.onmeasure(phonewindow.java:2338)             at android.view.view.measure(view.java:16648)             at android.view.viewrootimpl.performmeasure(viewrootimpl.java:1959)             at android.view.viewrootimpl.measurehierarchy(viewrootimpl.java:1145)             at android.view.viewrootimpl.performtraversals(viewrootimpl.java:1340)             at android.view.viewrootimpl.dotraversal(viewrootimpl.java:1032)             at android.view.viewrootimpl$traversalrunnable.run(viewrootimpl.java:5657)             at android.view.choreographer$callbackrecord.run(choreographer.java:761)             at android.view.choreographer.docallbacks(choreographer.java:574)             at android.view.choreographer.doframe(choreographer.java:544)             at android.view.choreographer$framedisplayeventreceiver.run(choreographer.java:747)             at android.os.handler.handlecallback(handler.java:733)             at android.os.handler.dispatchmessage(handler.java:95)             at android.os.looper.loop(looper.java:136)             at android.app.activitythread.main(activitythread.java:5026)             at java.lang.reflect.method.invokenative(native method)             at java.lang.reflect.method.invoke(method.java:515)             at com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:777)             at com.android.internal.os.zygoteinit.main(zygoteinit.java:602)             at dalvik.system.nativestart.main(native method)

i have set in xml proper id wvbrowser , have user permission in android manifest xml file. know problem? in advanced.

you can't utilize webview on wearable, check list of unavailable features here: https://developer.android.com/training/wearables/apps/index.html

also, can't connect net straight wearable device, doesn't have net access , can receive info companion handheld.

edit: actually, see 1 way it:

load html page on handheld , transfer wearable using wearable.dataapi display page on wearable using(may customized) third-party html library. may project this answer useful here.

android android-studio android-webview android-wear

No comments:

Post a Comment