Building on what @CommnsWare said, here are steps to migrate to Fused api.
Step 1: Get an instance of GoogleApiClient
instead of LocationClient
.
The ConnectionCallback
(mConnectionCallbacks, mOnConnectionFailedListener in example below) needs slight modification but that should be trivial.
googleApiClient = new GoogleApiClient.Builder(this)
.addApi(LocationServices.API)
.addConnectionCallbacks(mConnectionCallbacks)
.addOnConnectionFailedListener(mOnConnectionFailedListener)
.build();
Step 2: Update connect and disconnect calls.
Replace the locationClient.connect()
with googleApiClient.connect()
and locationClient.disconnect()
with googleApiClient.disconnect()
.
Step 3: Use LocationServices.FusedLocationApi to send your requests.
e.g.
LocationServices.FusedLocationApi.getLastLocation(googleApiClient)
LocationServices.FusedLocationApi.requestLocationUpdates(googleApiClient, request, mLocationListener);
Hope this helps!
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…