2016-10-21 24 views
0

GPS位置追跡が必要な中国向けのAndroidアプリケーションを開発中です。 位置情報のトラッキングのために、アンドロイドはGoogle Playサービスにアクセスする必要があります.Google Playサービスは中国向けにブロックされています。中国向けAndroid GPS位置追跡

この問題の回避策はありますか?推奨される第三者のライブラリや実装はありますか?

おかげ

+1

あなたは、従来のGPS位置のコレクションを使用して自分自身をフィルタリングすることができます。既に知っているかもしれませんhttps://developer.android.com/guide/topics/location/strategies.html – james

+0

ありがとうございます。上記のコードを使用して中国語タブレット(Huawei M2 -A01L)の位置を取得し、それが機能しない場合があります。何か案が ? –

答えて

2

doscthisの答えを参照してください詳細についてはあなたがLocationManager

// Acquire a reference to the system Location Manager 
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE); 

// Define a listener that responds to location updates 
LocationListener locationListener = new LocationListener() { 
    public void onLocationChanged(Location location) { 
     // Called when a new location is found by the network location provider. 
     makeUseOfNewLocation(location); 
    } 

    public void onStatusChanged(String provider, int status, Bundle extras) {} 

    public void onProviderEnabled(String provider) {} 

    public void onProviderDisabled(String provider) {} 
    }; 

// Register the listener with the Location Manager to receive location updates 
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener); 

requestLocationUpdatesLocationListenerを実装し、システムからandroid.location.LocationManagerを使用して、呼び出す必要があります。

+0

ありがとうございます。上記のコードを使用して中国語タブレット(Huawei M2 -A01L)の位置を取得し、それが機能していません。何か案が ? –

+0

@RaminduWeeraman、logcatの出力を取得できますか? –

0
  1. LocationManagerは、Google Playサービスを必要としません。この ドキュメントは完全にそれについて言及しています https://developer.android.com/guide/topics/location/strategies.html
  2. BaiduLocation、これは中国のように思われ、 英語のドキュメントがありません。私の知る限り、微信は

    http://developer.baidu.com/map/geosdk-android-developv3.3.htm

はほとんど私がBaiduLocation上の任意の経験を持っていない、あまりにもこれを使用しています。すべてのドキュメントは中国語です。あなたがリンクの下を見ると、Device_Sensors、Battery_Saving、Hight_Accuracyのような位置モードについて言及しています。多分、これはあなたが望むものです。

http://wiki.lbsyun.baidu.com/cms/androidloc/doc/v7.0/index.html

// This is simplified example from github 
// https://github.com/buqing2009/GCS_Baidu_Advance/blob/master/app/src/main/java/com/lingmutec/buqing2009/gcs_baidu_advance/BaiduMapFragment.java 
private LocationClient mLocationClient = null; 

public void requestLocationUpdates() { 
    mLocationClient = new LocationClient(getApplicationContext()); 

    LocationClientOption option = new LocationClientOption(); 
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy); 
    option.setOpenGps(true); 
    option.setCoorType("bd09ll"); 
    option.setScanSpan(1000); 
    mLocationClient.setLocOption(option); 

    mLocationClient.registerLocationListener(new BDLocationListener() { 
     @Override 
     public void onReceiveLocation(BDLocation location) { 

     } 
    }); 
} 
+0

ありがとうございます、BaiduLocationはインターネット接続なしで場所を取得できますか?Googleプレイサービス(GPSプロバイダを使用)を使用して同様に –

+0

更新された回答をご覧ください – Blackkara

関連する問題