所有文档
开发指南
百度地图Android定位SDK自V7.3版本起,面向广大开发者提供了辅助H5定位的能力。
辅助H5定位指的是开发者在自己的App中使用百度地图JavaScript API实现Web页面开发时, 可调用集成在App中的百度地图定位SDK来获取更精准的位置信息。
在使用定位SDK进行具体开发工作之前,需获取密钥(AK), 并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。 此外, Google在Android 6.0中引入了动态权限获取机制,开发者在使用定位SDK之前, 请详细了解关于Android 6.0系统开发须知。
请在主线程中声明LocationClient类对象,该对象初始化需传入Context类型参数。 推荐使用getApplicationConext()方法获取全进程有效的Context。
核心代码段如下:
mLocationClient = new LocationClient(getApplicationContext());//声明LocationClient类
核心代码如下:
contentWebView = (WebView) findViewById(R.id.webview);
核心代码如下:
contentWebView.setWebViewClient(new WebViewClient() {public void onPageFinished(WebView view, String url) {super.onPageFinished(view, url);}public void onPageStarted(WebView view, String url, Bitmap favicon) {super.onPageStarted(view, url, favicon);}});contentWebView.setWebChromeClient(new WebChromeClient() {// 处理javascript中的alertpublic boolean onJsAlert(WebView view, String url, String message,final JsResult result) {return true;}// 处理javascript中的confirmpublic boolean onJsConfirm(WebView view, String url,String message, final JsResult result) {return true;}// 处理定位权限请求@Overridepublic void onGeolocationPermissionsShowPrompt(String origin,GeolocationPermissions.Callback callback) {callback.invoke(origin, true, false);super.onGeolocationPermissionsShowPrompt(origin, callback);}@Override// 设置网页加载的进度条public void onProgressChanged(WebView view, int newProgress) {TestJSLocation.this.getWindow().setFeatureInt(Window.FEATURE_PROGRESS, newProgress * 100);super.onProgressChanged(view, newProgress);}// 设置应用程序的标题titlepublic void onReceivedTitle(WebView view, String title) {super.onReceivedTitle(view, title);}});contentWebView.loadUrl("file:///android_asset/web.html");
调用如下方法,开启辅助H5定位:
mLocationClient.start();mLocationClient.enableAssistantLocation(contentWebView);
同时,在H5页面中使用定位接口,并开启辅助定位。 JavaScript API端代码参考如下:
var map = new BMap.Map("allmap");var point = new BMap.Point(116.331398, 39.897445);map.centerAndZoom(point, 12);var geolocation = new BMap.Geolocation();// 开启辅助定位geolocation.enableSDKLocation();geolocation.getCurrentPosition(function(r){if (this.getStatus() === BMAP_STATUS_SUCCESS) {var mk = new BMap.Marker(r.point);map.addOverlay(mk);map.panTo(r.point);}});
请参考百度地图JavaScript API对应章节的介绍。
完成辅助H5定位功能之后,可调用如下代码关闭SDK端辅助H5定位功能。
mLocationClient.disableAssistantLocation();
上一篇
下一篇
本篇文章对您是否有帮助?
金陵十三钗是什么意思 | 头孢是治疗什么的 | 右眼一直跳是什么原因 | 八面玲珑是指什么生肖 | 百合是什么 |
怀孕不能吃什么药 | 转述句是什么意思 | 得了幽门螺旋杆菌有什么症状 | 绿心黑豆有什么功效 | 中医说的湿气重是什么意思 |
成什么结什么 | 7月6日什么星座 | 海鸥吃什么 | 吃什么养肝护肝 | 孕酮低跟什么有关系 |
五彩斑斓的意思是什么 | 子弟是什么意思 | 蝉蜕是什么 | 胃嗳气是什么症状 | 蜂胶是什么 |
中秋节送什么水果好hcv8jop1ns1r.cn | 巴氏杀菌是什么意思wuhaiwuya.com | 黄历破屋是什么意思hcv9jop7ns5r.cn | 阀值是什么意思hcv8jop3ns5r.cn | 孟姜女姓什么hcv9jop4ns6r.cn |
凌波仙子是什么意思hcv8jop4ns2r.cn | 秋天吃什么adwl56.com | 胃热吃什么药hcv8jop4ns8r.cn | 温碧泉适合什么年龄hcv8jop1ns9r.cn | 什么年龄割双眼皮最好hlguo.com |
金蝉脱壳是什么意思hcv9jop5ns4r.cn | 心律不齐是什么病hcv7jop5ns0r.cn | 肾不好挂什么科hcv9jop1ns2r.cn | 姨妈不正常是什么原因beikeqingting.com | 罗汉果可以和什么一起泡水喝beikeqingting.com |
眼睛看东西模糊是什么原因fenrenren.com | 痔疮不能吃什么食物hcv9jop0ns4r.cn | 脑炎什么症状hcv8jop8ns5r.cn | 薄荷泡水喝有什么好处liaochangning.com | 思密达是什么意思hcv7jop9ns5r.cn |