Page 1 of 1
App WebView: Device detection issue, "is_app" returned false
Posted: Wed Jun 25, 2014 3:27 pm
by surajrao
I am facing issue with WURFL free version, in detecting APP WebView for IOS & Android. Virtual capability "is_app" value is been returned as "false". Secondly, though the user agent in the request header is native, WURFL returns mWeb user agent.
14:37:11,177 INFO [STDOUT] Request Header UserAgent :: Mozilla/5.0 (iPhone; CPU iPhone OS 7_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Mobile/11D167
14:37:11,177 INFO [STDOUT] Capability :: Key :: can_assign_phone_number :: Value :: true
14:37:11,177 INFO [STDOUT] Capability :: Key :: device_os_version :: Value :: 7.0
14:37:11,177 INFO [STDOUT] Capability :: Key :: mobile_browser_version :: Value :: 7.0
14:37:11,177 INFO [STDOUT] Capability :: Key :: pointing_method :: Value :: touchscreen
14:37:11,177 INFO [STDOUT] Capability :: Key :: preferred_markup :: Value :: html_web_4_0
14:37:11,177 INFO [STDOUT] Capability :: Key :: mobile_browser :: Value :: Safari
14:37:11,177 INFO [STDOUT] Capability :: Key :: resolution_height :: Value :: 960
14:37:11,177 INFO [STDOUT] Capability :: Key :: xhtml_support_level :: Value :: 4
14:37:11,177 INFO [STDOUT] Capability :: Key :: device_os :: Value :: iOS
14:37:11,177 INFO [STDOUT] Capability :: Key :: is_tablet :: Value :: false
14:37:11,177 INFO [STDOUT] Capability :: Key :: is_wireless_device :: Value :: true
14:37:11,177 INFO [STDOUT] Capability :: Key :: ux_full_desktop :: Value :: false
14:37:11,177 INFO [STDOUT] Capability :: Key :: resolution_width :: Value :: 640
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: is_smartphone :: Value :: true
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: advertised_browser :: Value ::
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: advertised_browser_version :: Value ::
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: advertised_device_os :: Value :: iOS
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: is_robot :: Value :: false
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: is_app :: Value :: false
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: is_android :: Value :: false
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: advertised_device_os_version :: Value :: 7.1
14:37:11,187 INFO [STDOUT] VirtualCapability :: Key :: is_ios :: Value :: true
14:37:11,187 INFO [STDOUT] WURFL UserAgent :: Mozilla/5.0 (iPhone; CPU iPhone OS 7_0 like Mac OS X) AppleWebKit/537.40 (KHTML, like Gecko) Version/6.0 Mobile/11A4400f Safari/8536.25
14:37:11,187 INFO [STDOUT] Device Type : mobile
14:37:11,187 INFO [STDOUT] Is App : false
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Wed Jun 25, 2014 4:16 pm
by Elliotfehr
Suraj,
Are you able to let me know which version of the API you are using? The latest free version available does include the logic to detect this User Agent. If you would like to upgrade, the latest version of the free API can be downloaded
here.
Thank you,
Elliot
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Thu Jun 26, 2014 3:33 pm
by surajrao
Hi Elliot,
Upgraded to latest 1.5.1 version, still it gives the same result.
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Thu Jun 26, 2014 4:10 pm
by Elliotfehr
Suraj,
Please make sure that you are requesting this capability as a virtual capability and not as a physical capability. Are you able to let me know which one of the API's you are using so that I can try and replicate this issue?
Thank you,
Elliot
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Thu Jun 26, 2014 4:15 pm
by surajrao
Hi Elliot,
Code for your reference
Device device = getWurflEngine().getDeviceForRequest(request);
device.getVirtualCapability("is_app");
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Fri Jun 27, 2014 9:01 am
by Elliotfehr
Suraj,
Thank you for posting your code snippet. I have been able to replicate this issue with the Java OnSite API (1.5.1) and have notified our engineering team to make the necessary modifications. I will let you know as soon as I have any further updates.
Thank you,
Elliot
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Sat Jun 28, 2014 6:22 pm
by surajrao
Thank You Elliot.
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Tue Jul 01, 2014 11:25 am
by surajrao
Hi Elliot,
Any update, when the fix will be available.
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Tue Jul 01, 2014 11:41 am
by sriram
Hi Suraj,
We will be releasing a bug fix shortly. Please keep an eye out for the Java API v1.5.1.1. I will post an update here when the release is live.
Cheers!
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Tue Jul 01, 2014 2:01 pm
by Elliotfehr
Suraj,
I have just uploaded the updated Java API to your file manager on scientiamobile.com. Feel free to let us know if you have any further issues.
Thank you,
Elliot
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Tue Jul 01, 2014 2:08 pm
by surajrao
Hi Elliot,
Can you please share the download URL?
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Wed Jul 02, 2014 11:09 am
by Elliotfehr
Suraj,
I messaged you the link yesterday and wanted to follow up with you to make sure that you were able to download it. We have also just updated our
Sourceforge page to include this version.
Thank you,
Elliot
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Wed Jul 02, 2014 11:20 am
by surajrao
Hi Elliot,
Thanks for following up. It's working fine for iOS but it fails for Android WebView. Please find the logs below
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466093 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Raw UserAgent :: Mozilla/5.0 (Linux; Android 4.4.2; SAMSUNG-SGH-I337 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466094 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Start: findDeviceTypeFromDevice(device, dInfoBean) method
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466095 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: can_assign_phone_number :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466095 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: device_os_version :: Value :: 4.4
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466096 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: mobile_browser_version :: Value ::
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466097 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: pointing_method :: Value :: touchscreen
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466097 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: preferred_markup :: Value :: html_web_4_0
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466098 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: mobile_browser :: Value :: Android Webkit
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466099 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: resolution_height :: Value :: 480
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466099 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: xhtml_support_level :: Value :: 4
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466100 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: device_os :: Value :: Android
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466100 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: is_tablet :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466101 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: is_wireless_device :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466102 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: ux_full_desktop :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466102 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet Capability :: Key :: resolution_width :: Value :: 320
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466104 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: advertised_browser :: Value :: Chrome Mobile
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466105 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_full_desktop :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466106 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_windows_phone :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466106 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_largescreen :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466107 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_xhtmlmp_preferred :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466108 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_robot :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466108 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_wml_preferred :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466109 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_smartphone :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466109 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: advertised_browser_version :: Value :: 30
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466110 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: advertised_device_os :: Value :: Android
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466111 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_android :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466111 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_app :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466112 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_mobile :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466113 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: advertised_device_os_version :: Value :: 4.4
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466113 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_ios :: Value :: false
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466114 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_html_preferred :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466114 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet VirtualCapability :: Key :: is_touchscreen :: Value :: true
**** debug Wed Jul 02 11:11:06 CDT 2014 1404317466115 /atg/dynamo/servlet/pipeline/WagDeviceDetectionServlet UserAgent :: DO_NOT_MATCH_GENERIC_ANDROID_4_4
Thanks & Regards,
Suraj
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Thu Feb 26, 2015 8:09 pm
by ic10503
Hi there,
Is there any update on this issue ? The user agent "Mozilla/5.0 (Linux; Android 4.4.2; SAMSUNG-SGH-I337 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36" is for a webview and should have is_app capability set, but it is not. Here is the reference for old and new Webview Useragent strings:
https://developer.chrome.com/multidevice/user-agent
Is there a way around it ? Please suggest if there is any other capability which can detect the webview on Android.
Thanks,
Kumar
Re: App WebView: Device detection issue, "is_app" returned f
Posted: Thu Feb 26, 2015 9:45 pm
by sriram
Hi Kumar,
In the future, please keep in mind starting a new thread for new questions is advisable to keep the discussion on topic and to make it easier for our support staff to find and reply to your questions.
Please note that the webview User-Agent for Android is also used by the stock/OEM browsers (aka browser/internet app) that are bundled with Android devices. Hence, it is currently not possible to differentiate between User-Agents sent by apps using webviews and User-Agents sent by stock/OEM browsers on Android, by just looking at the User-Agent. This is why we return is_app as false for stock browser/webview style User-Agents.
Our detection team has their eye on this issue and I would stay tuned to our future WURFL API releases for possible solutions.
Thank you,