欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

android中webview定位問題示例詳解

 更新時(shí)間:2017年12月05日 08:43:13   作者:天天星期天  
這篇文章主要給大家介紹了關(guān)于android中webview定位問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

現(xiàn)在很多App里都內(nèi)置了Web網(wǎng)頁(Hyprid App),比如說很多電商平臺(tái),淘寶、京東、聚劃算等等

京東首頁

那么這種該如何實(shí)現(xiàn)呢?其實(shí)這是Android里一個(gè)叫WebView的組件實(shí)現(xiàn)的。

最近在做安卓的網(wǎng)頁開發(fā)。有一個(gè)頁面需要用到定位,但是一直定位獲取失敗。很難過。網(wǎng)上教程也很多,但是無一例外全部失敗。最后老夫花了3天時(shí)間,嘔心瀝血,終于研制出了解決方案。

三步走戰(zhàn)略:

一、獲取權(quán)限

android 6.0 以后,需要?jiǎng)討B(tài)的獲取位置或者存儲(chǔ)權(quán)限,按照各自的愛好放置位置。我是應(yīng)用開啟初始化的時(shí)候,放在MainActivity中的OnCreate方法里。

 if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
  != PackageManager.PERMISSION_GRANTED
  || ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
  != PackageManager.PERMISSION_GRANTED
  || ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
  != PackageManager.PERMISSION_GRANTED) {
  Toast.makeText(getApplicationContext(),"沒有權(quán)限,請手動(dòng)開啟定位權(quán)限",Toast.LENGTH_SHORT).show();
  // 申請一個(gè)(或多個(gè))權(quán)限,并提供用于回調(diào)返回的獲取碼(用戶定義)
  ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 100);
  return false;
 }

二、webview setting 設(shè)置(復(fù)制了別人代碼)

WebView webView = (WebView)findViewById(R.id.webview); 
WebSettings webSettings = webView.getSettings(); 
 
//webview支持js腳本 
webSettings.setJavaScriptEnabled(true); 
 
//啟用數(shù)據(jù)庫 
webSettings.setDatabaseEnabled(true); 
 
//設(shè)置定位的數(shù)據(jù)庫路徑 
String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath(); 
webSettings.setGeolocationDatabasePath(dir); 
 
//啟用地理定位 
webSettings.setGeolocationEnabled(true); 
 
//開啟DomStorage緩存 
webSettings.setDomStorageEnabled(true) 
 
//配置權(quán)限 
webView.setWebChromeClient(new WebChromeClient() { 
 @Override 
 public void onReceivedIcon(WebView view, Bitmap icon) { 
 super.onReceivedIcon(view, icon); 
 
} 
 
@Override 
public void onGeolocationPermissionsShowPrompt(String origin,Callback callback) { 
 callback.invoke(origin, true, false); 
 super.onGeolocationPermissionsShowPrompt(origin, callback); 
 
} 
}); 

三 網(wǎng)絡(luò)權(quán)限

 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

網(wǎng)上的教程到這里就結(jié)束了。一般都會(huì)告訴你,朋友你定位能用了。然而我并不能用?。。?!

檢查來檢查去。沒啥毛病啊。一模一樣啊!

四 build gradle (我用的是as )修改

自己app的build.gradle 里面一個(gè)targetSdkVersion 23 (為什么寫23 高德地圖告訴我的)

然后你的工程地圖能用了。

參考網(wǎng)站:http://blog.csdn.net/cheunjq/article/details/54729875

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Android實(shí)現(xiàn)將View轉(zhuǎn)化為圖片并保存到本地

    Android實(shí)現(xiàn)將View轉(zhuǎn)化為圖片并保存到本地

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)將View轉(zhuǎn)化為圖片并保存到本地,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • android之camera用法實(shí)例詳解

    android之camera用法實(shí)例詳解

    這篇文章主要介紹了android之camera用法,以實(shí)例形式較為詳細(xì)的分析了Android使用camera拍照的相關(guān)技巧與注意事項(xiàng),需要的朋友可以參考下
    2015-09-09
  • Android開發(fā)實(shí)現(xiàn)Switch控件修改樣式功能示例【附源碼下載】

    Android開發(fā)實(shí)現(xiàn)Switch控件修改樣式功能示例【附源碼下載】

    這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)Switch控件修改樣式功能,涉及Android Switch開關(guān)控件樣式設(shè)置與事件響應(yīng)相關(guān)操作技巧,需要的朋友可以參考下
    2019-04-04
  • Android實(shí)現(xiàn)輪播效果的兩種方法

    Android實(shí)現(xiàn)輪播效果的兩種方法

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)輪播效果的兩種方法,使用ViewPager和SliderLayout第三方進(jìn)行實(shí)現(xiàn)輪播,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • Android自定義日歷控件實(shí)例詳解

    Android自定義日歷控件實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了Android自定義日歷控件的實(shí)現(xiàn)過程,具有一定的實(shí)用性和參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 解析Android應(yīng)用程序運(yùn)行機(jī)制

    解析Android應(yīng)用程序運(yùn)行機(jī)制

    這篇文章主要介紹了Android應(yīng)用程序運(yùn)行機(jī)制,有需要的朋友可以參考一下
    2014-01-01
  • android自定義控件和自定義回調(diào)函數(shù)步驟示例

    android自定義控件和自定義回調(diào)函數(shù)步驟示例

    這篇文章主要介紹了android自定義控件步驟示例,包括為View類增加屬性、響應(yīng)用戶消息、自定義回調(diào)函數(shù)等方法
    2014-01-01
  • 深入學(xué)習(xí)Android?ANR?的原理分析及解決辦法

    深入學(xué)習(xí)Android?ANR?的原理分析及解決辦法

    Android系統(tǒng)中,AMS和WMS會(huì)檢測App的響應(yīng)時(shí)間,如果App在特定時(shí)間無法相應(yīng)屏幕觸摸或鍵盤輸入時(shí)間,或者特定事件沒有處理完畢,就會(huì)出現(xiàn)ANR。本文將帶領(lǐng)大學(xué)深入學(xué)習(xí)一下ANR的原理及解決辦法,感興趣的同學(xué)可以學(xué)習(xí)一下
    2021-11-11
  • Android framework ATMS啟動(dòng)流程

    Android framework ATMS啟動(dòng)流程

    這篇文章主要為大家介紹了Android framework ATMS啟動(dòng)流程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Android 多線程實(shí)現(xiàn)重復(fù)啟動(dòng)與停止的服務(wù)

    Android 多線程實(shí)現(xiàn)重復(fù)啟動(dòng)與停止的服務(wù)

    這篇文章主要介紹了Android 多線程實(shí)現(xiàn)重復(fù)啟動(dòng)與停止的服務(wù)的相關(guān)資料,多線程環(huán)境下為了避免死鎖,一般提倡開放調(diào)用,開放調(diào)用可以避免死鎖,它的代價(jià)是失去原子性,這里說明重復(fù)啟動(dòng)與停止的服務(wù),需要的朋友可以參考下
    2017-08-08

最新評(píng)論