我有一个使用react构建的web应用程序嵌入到使用WebChrome Client的本地应用程序中。
react应用程序尝试使用HTML5地理位置API读取您当前的地理位置,并基于此显示结果。
它在大多数安卓设备上运行良好,但在非洲市场的某些华为手机上不起作用,因为这些设备缺少Google Play服务。
虽然有一种方法来获得设备的地理位置没有谷歌播放服务通过使用Android位置管理器。
但问题是我如何配置WebChromeClient使用Android位置管理器而不是谷歌播放服务?
我看了看WebChromeClient的界面,但是没有办法做到。
欢迎大家多多指教。
华为定位工具包可能有助于解决您的问题。
Location Kit提供快速获取用户设备精确位置的能力,帮助您建立全球定位能力,拓展全球业务。目前,Location Kit提供两种模式来访问其功能。
- Android: Android的位置SDK为您的Android应用程序提供了与位置相关的api。这些api主要涉及四个功能:融合定位、活动识别、地理围栏和高精度定位。此模式适用于手机和华为平板电脑。
- REST API: Location Kit的REST API使您能够使用HTTPS发起请求以调用与位置相关的功能,包括地理围栏和地理位置(API)。该模式适用于web客户端。
详情请参考文档。
华为还为React Native提供了一些HMS Core工具包插件:
参考文件
Location Kit插件