Java 类android.webkit.GeolocationPermissions 实例源码

项目:Ironman    文件:ReactWebViewManager.java   
@Override
protected WebView createViewInstance(ThemedReactContext reactContext) {
  ReactWebView webView = new ReactWebView(reactContext);
  webView.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
      callback.invoke(origin, true, false);
    }
  });
  reactContext.addLifecycleEventListener(webView);
  mWebViewConfig.configWebView(webView);
  webView.getSettings().setBuiltInZoomControls(true);
  webView.getSettings().setDisplayZoomControls(false);

  // Fixes broken full-screen modals/galleries due to body height being 0.
  webView.setLayoutParams(
          new LayoutParams(LayoutParams.MATCH_PARENT,
              LayoutParams.MATCH_PARENT));

  if (ReactBuildConfig.DEBUG && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
  }

  return webView;
}
项目:appcan-android    文件:CBrowserMainFrame7.java   
@Override
public void onGeolocationPermissionsShowPrompt(final String origin, final GeolocationPermissions.Callback callback) {
    AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
    builder.setMessage("是否允许获取您的位置信息?");
    DialogInterface.OnClickListener dialogButtonOnClickListener = new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int clickedButton) {
            if (DialogInterface.BUTTON_POSITIVE == clickedButton) {
                callback.invoke(origin, true, true);
            } else if (DialogInterface.BUTTON_NEGATIVE == clickedButton) {
                callback.invoke(origin, false, false);
            }
        }
    };
    builder.setPositiveButton("允许", dialogButtonOnClickListener);
    builder.setNegativeButton("拒绝", dialogButtonOnClickListener);
    builder.show();
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:MedicationReminder    文件:LogisticsWebActivity.java   
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setToolBarTitle(AppConstants.ToolBarTitle.deliveryLogistics);
    initData();
    logisticsWebView.loadUrl("https://m.kuaidi100.com/");
    logisticsWebView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }


    });
    logisticsWebView.setWebChromeClient(new WebChromeClient() {

        //配置权限(同样在WebChromeClient中实现)
        @Override
        public void onGeolocationPermissionsShowPrompt(String origin,
                                                       GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, false);
            super.onGeolocationPermissionsShowPrompt(origin, callback);
        }

    });

}
项目:AgentWeb    文件:WebChromeClientWrapper.java   
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    if (this.mRealWebChromeClient != null){
        this.mRealWebChromeClient.onGeolocationPermissionsShowPrompt(origin, callback);
        return;
    }
    super.onGeolocationPermissionsShowPrompt(origin,callback);

}
项目:AgentWeb    文件:DefaultChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {

    LogUtils.i(TAG, "onGeolocationPermissionsShowPrompt:" + origin + "   callback:" + callback);
    if (AgentWebUtils.isOverriedMethod(mWebChromeClient, "onGeolocationPermissionsShowPrompt", "public void " + ChromePath + ".onGeolocationPermissionsShowPrompt", String.class, GeolocationPermissions.Callback.class)) {
        super.onGeolocationPermissionsShowPrompt(origin, callback);
        return;
    }
    onGeolocationPermissionsShowPromptInternal(origin, callback);
}
项目:AgentWeb    文件:DefaultChromeClient.java   
private void onGeolocationPermissionsShowPromptInternal(String origin, GeolocationPermissions.Callback callback) {

        if (mPermissionInterceptor != null) {
            if (mPermissionInterceptor.intercept(this.mWebView.getUrl(), AgentWebPermissions.LOCATION, "location")) {
                callback.invoke(origin, false, false);
                return;
            }
        }

        Activity mActivity = mActivityWeakReference.get();
        if (mActivity == null) {
            callback.invoke(origin, false, false);
            return;
        }

        List<String> deniedPermissions = null;
        if ((deniedPermissions = AgentWebUtils.getDeniedPermissions(mActivity, AgentWebPermissions.LOCATION)).isEmpty()) {
            LogUtils.i(TAG, "onGeolocationPermissionsShowPromptInternal:" + true);
            callback.invoke(origin, true, false);
        } else {

            Action mAction = Action.createPermissionsAction(deniedPermissions.toArray(new String[]{}));
            mAction.setFromIntention(FROM_CODE_INTENTION_LOCATION);
            ActionActivity.setPermissionListener(mPermissionListener);
            this.mCallback = callback;
            this.origin = origin;
            ActionActivity.start(mActivity, mAction);
        }


    }
项目:XinFramework    文件:WebModel.java   
@Override
public void onGeolocationPermissionsShowPrompt(final String origin,
                                               final GeolocationPermissions.Callback callback) {
    callback.invoke(origin,
            true,
            true);

    super.onGeolocationPermissionsShowPrompt(origin,
            callback);
}
项目:Android_Code_Arbiter    文件:GeolocationActivity.java   
@Override
protected void onCreate(Bundle b) {
    super.onCreate(b);

    wv.setWebChromeClient(new WebChromeClient() {
        @Override
        public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, false);
        }
    });
}
项目:PlayAndroid    文件:WebViewActivity.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions
        .Callback callback) {
    Log.d(TAG, "onGeolocationPermissionsShowPrompt() called with: origin = [" +
            origin + "], callback = [" + callback + "]");
    callback.invoke(origin, true, true);
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:RNLearn_Project1    文件:ReactWebViewManager.java   
@Override
protected WebView createViewInstance(ThemedReactContext reactContext) {
  ReactWebView webView = new ReactWebView(reactContext);
  webView.setWebChromeClient(new WebChromeClient() {
    @Override
    public boolean onConsoleMessage(ConsoleMessage message) {
      if (ReactBuildConfig.DEBUG) {
        return super.onConsoleMessage(message);
      }
      // Ignore console logs in non debug builds.
      return true;
    }

    @Override
    public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
      callback.invoke(origin, true, false);
    }
  });
  reactContext.addLifecycleEventListener(webView);
  mWebViewConfig.configWebView(webView);
  webView.getSettings().setBuiltInZoomControls(true);
  webView.getSettings().setDisplayZoomControls(false);
  webView.getSettings().setDomStorageEnabled(true);

  // Fixes broken full-screen modals/galleries due to body height being 0.
  webView.setLayoutParams(
          new LayoutParams(LayoutParams.MATCH_PARENT,
              LayoutParams.MATCH_PARENT));

  if (ReactBuildConfig.DEBUG && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
  }

  return webView;
}
项目:RNLearn_Project1    文件:ReactWebViewManager.java   
@Override
protected WebView createViewInstance(ThemedReactContext reactContext) {
  ReactWebView webView = new ReactWebView(reactContext);
  webView.setWebChromeClient(new WebChromeClient() {
    @Override
    public boolean onConsoleMessage(ConsoleMessage message) {
      if (ReactBuildConfig.DEBUG) {
        return super.onConsoleMessage(message);
      }
      // Ignore console logs in non debug builds.
      return true;
    }

    @Override
    public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
      callback.invoke(origin, true, false);
    }
  });
  reactContext.addLifecycleEventListener(webView);
  mWebViewConfig.configWebView(webView);
  webView.getSettings().setBuiltInZoomControls(true);
  webView.getSettings().setDisplayZoomControls(false);
  webView.getSettings().setDomStorageEnabled(true);

  // Fixes broken full-screen modals/galleries due to body height being 0.
  webView.setLayoutParams(
          new LayoutParams(LayoutParams.MATCH_PARENT,
              LayoutParams.MATCH_PARENT));

  if (ReactBuildConfig.DEBUG && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
  }

  return webView;
}
项目:robotium-extensions    文件:ProxyWebChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    if (originalWebChromeClient != null) {
        originalWebChromeClient.onGeolocationPermissionsShowPrompt(origin, callback);
    } else {
        super.onGeolocationPermissionsShowPrompt(origin, callback);
    }
}
项目:MessengerBypasser    文件:FacebookWebChromeClient.java   
/**
 * {@inheritDoc}
 */
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    // If we are not allowed to use geolocation, show an alert, if possible.
    if (!mAllowGeolocation) {
        if (mListener != null) {
            mListener.showGeolocationDisabledAlert();
        }
    }

    // Invoke the callback stating whether or not geolocation is allowed
    callback.invoke(origin, mAllowGeolocation, false);
}
项目:MessengerBypasser    文件:FacebookWebChromeClient.java   
/**
 * {@inheritDoc}
 */
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    // If we are not allowed to use geolocation, show an alert, if possible.
    if (!mAllowGeolocation) {
        if (mListener != null) {
            mListener.showGeolocationDisabledAlert();
        }
    }

    // Invoke the callback stating whether or not geolocation is allowed
    callback.invoke(origin, mAllowGeolocation, false);
}
项目:openmap-client-android    文件:MainActivity.java   
@Override
protected void onCreate(Bundle savedInstanceState) {
    mContext = this;
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (ContextCompat.checkSelfPermission(this,
            Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED){
        ActivityCompat.requestPermissions(this,
                new String[]{Manifest.permission.ACCESS_FINE_LOCATION,
                        Manifest.permission.ACCESS_COARSE_LOCATION},
                10);
    }

    WebView webview = (WebView) findViewById(R.id.webView);
    webview.setWebViewClient(new WebViewClient());
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("http://openpokemap.pw/");
    webview.clearCache(true);

    webview.setWebChromeClient(new WebChromeClient(){
        public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, true);
        }
    });

    startService(new Intent(this, Background.class));
    startService(new Intent(this, Notifications.class));
}
项目:SafeWebView    文件:SafeWebView.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    super.onGeolocationPermissionsShowPrompt(origin, callback);
    if(client != null) {
        client.onGeolocationPermissionsShowPrompt(origin, callback);
    }
}
项目:orchextra-android-sdk    文件:OxWebView.java   
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
private void settingWebView() {
    webView.setClickable(true);

    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

    if (AndroidSdkVersion.hasJellyBean16()) {
        webView.getSettings().setAllowFileAccessFromFileURLs(true);
        webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
    }

    webView.getSettings().setGeolocationDatabasePath(getContext().getFilesDir().getPath());
    webView.setWebChromeClient(new WebChromeClient() {
        public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, false);
        }
    });
    webView.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            showProgressView(false);
        }
    });

    webView.addJavascriptInterface(new PostMessage(), "OrchextraJSNativeAndroid");
}
项目:FaceSlim    文件:MainActivity.java   
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    /** Request location permission.
     *  If granted it's awesome and go on,
     *  otherwise just stop here and leave the method.
     */
    requestLocationPermission();
    if (!hasLocationPermission())
        return;

    callback.invoke(origin, true, false);
}
项目:SlimSocial-for-Facebook    文件:MainActivity.java   
private void SetupFullScreenVideo() {
    //full screen video
    mTargetView = (FrameLayout) findViewById(R.id.target_view);
    myWebChromeClient = new WebChromeClient() {
        //this custom WebChromeClient allow to show video on full screen
        @Override
        public void onShowCustomView(View view, CustomViewCallback callback) {
            mCustomViewCallback = callback;
            mTargetView.addView(view);
            mCustomView = view;
            swipeRefreshLayout.setVisibility(View.GONE);
            mTargetView.setVisibility(View.VISIBLE);
            mTargetView.bringToFront();
        }

        @Override
        public void onHideCustomView() {
            if (mCustomView == null)
                return;

            mCustomView.setVisibility(View.GONE);
            mTargetView.removeView(mCustomView);
            mCustomView = null;
            mTargetView.setVisibility(View.GONE);
            mCustomViewCallback.onCustomViewHidden();
            swipeRefreshLayout.setVisibility(View.VISIBLE);
        }

        @Override
        public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, false);
        }
    };
    webViewFacebook.setWebChromeClient(myWebChromeClient);
}
项目:KitAlumniApp-Client    文件:KitNaviFragment.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    // Always grant permission since the app itself requires location
    // permission and the user has therefore already granted it
    callback.invoke(origin, true, false);
}
项目:chromium_webview    文件:WebViewContentsClientAdapter.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
        GeolocationPermissions.Callback callback) {
    TraceEvent.begin();
    if (mWebChromeClient != null) {
        if (TRACE) Log.d(TAG, "onGeolocationPermissionsShowPrompt");
        mWebChromeClient.onGeolocationPermissionsShowPrompt(origin, callback);
    }
    TraceEvent.end();
}
项目:WebPager    文件:PagerChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:KTools    文件:KWebChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    super.onGeolocationPermissionsShowPrompt(origin, callback);
    callback.invoke(origin,true,true);
}
项目:Radio-Garden-Client    文件:MainActivity.java   
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    startService(new Intent(this, BackgroundService.class));

    // get Connectivity Manager object to check connection
    ConnectivityManager connec = (ConnectivityManager)getSystemService(getBaseContext().CONNECTIVITY_SERVICE);
    // Check for network connections
    if ( connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTED ||
            connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTING ||
            connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTING ||
            connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTED ) {
        // if connected with internet
        internetIsUp=true;

    } else if (
            connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.DISCONNECTED ||
                    connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.DISCONNECTED  ) {
        internetIsUp=false;
    }

    mywebView = (WebView) findViewById(R.id.webview);   //WebView
    WebSettings webSettings= mywebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    if(internetIsUp==true){
        mywebView.loadUrl("http://radio.garden/live/");
    }
    else{
        mywebView.loadUrl("file:///android_asset/disconnected.html");
    }

    //Location
    ActivityCompat.requestPermissions(this, new String[]{
            Manifest.permission.ACCESS_FINE_LOCATION,
            Manifest.permission.ACCESS_COARSE_LOCATION
    }, 0);

    mywebView.setWebChromeClient(new WebChromeClient() {
        @Override
        public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
            callback.invoke(origin, true, false);
        }
    });

    mywebView.getSettings().setUserAgentString("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3278.0 Safari/537.36 OPR/51.0.2809.0 (Edition developer)");
    mywebView.setBackgroundColor(Color.TRANSPARENT);
    mywebView.setWebViewClient(new WebViewClient());
    PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
    PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Radio Garden");
    wakeLock.acquire();
}
项目:android-real-trams-map    文件:MyWebChromeClient.java   
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:DiyCode    文件:WebActivity.java   
@Override public void onGeolocationPermissionsShowPrompt(final String origin,
    final GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);//注意个函数,第二个参数就是是否同意定位权限,第三个是是否希望内核记住
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:android-base    文件:AbstractWebkitChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:BigApp_Discuz_Android    文件:HTML5WebView.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:BookmarkHelper    文件:Html5Activity.java   
@Override
public void onGeolocationPermissionsShowPrompt(final String origin, final GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);//注意个函数,第二个参数就是是否同意定位权限,第三个是是否希望内核记住
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:WappBrowser    文件:Presenter.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:SimplicityBrowser    文件:MainActivity.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:RxWebView    文件:OnGeolocationPermissionsShowPrompt.java   
public OnGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
  this.origin = origin;
  this.callback = callback;
}
项目:RxWebView    文件:OnGeolocationPermissionsShowPrompt.java   
public GeolocationPermissions.Callback getCallback() {
  return callback;
}
项目:RxWebView    文件:AllChromeOnObservable.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
  super.onGeolocationPermissionsShowPrompt(origin, callback);
  observer.onNext(new OnGeolocationPermissionsShowPrompt(origin, callback));
}
项目:rexxar-android    文件:RexxarWebChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin,
                                               GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:test_agent_android    文件:RobotiumWebClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    if (originalWebChromeClient != null) {
        originalWebChromeClient.onGeolocationPermissionsShowPrompt(origin, callback);
    } 
}
项目:extend-enhance-base    文件:BaseWebChromeClient.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:allinone    文件:WebBrowserActivity.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    Logs.i(TAG, "onGeolocationPermissionsShowPrompt origin = " + origin);
    super.onGeolocationPermissionsShowPrompt(origin, callback);
}
项目:BioStar2Android    文件:Html5WebView.java   
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
    callback.invoke(origin, true, false);
}
项目:AirMapView    文件:WebViewMapFragment.java   
@Override public void onGeolocationPermissionsShowPrompt(
    String origin, GeolocationPermissions.Callback callback) {
  // Always grant permission since the app itself requires location
  // permission and the user has therefore already granted it
  callback.invoke(origin, true, false);
}