theo dõi

Gần nhất :

Thống kê câu hỏi

Chuyên mục : Lập trình
Topic : Android
Hỏi lúc:
Lượt xem: 1,456

Mình muốn lấy vị trí đang đứng ở map api

Vũ  Toàn Vũ Toàn
 03  02  02
01 bình chọn hữu ích bởi Duy Do

hiện tại android 6. ko hỗ trợ permission android.permission.ACCESS_MOCK_LOCATION nên mình muốn lấy vị trí hiện tại ko được, bạn nào biết lấy vị trí hiện đang đứng trong map api chỉ mình 

1,456 xem 03 theo dõi 01 hữu ích hỏi –

Bạn biết ai đó có thể trả lời câu hỏi này?. Bạn có thể giúp đỡ bằng cách tìm những người giỏi nhất:

user user user user user

Thanh  Thinh Thanh Thinh
 57  26  62

Hi em, anh lấy vị trí hiện tại bằng api của google map : onPlaceLikelihood

 

PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
        .getCurrentPlace(mGoogleApiClient, null);

result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
    @Override
    public void onResult(PlaceLikelihoodBuffer likelyPlaces) {
        Log.i(TAG, "onResult");
        hideLoading();

        if (likelyPlaces.getCount() <= 0) {
            if (mAlertDialog == null) {
                mAlertDialog = DialogUtils.getDismissAlertDialog(getActivity(), getString(R.string.frag_search_physician_error_not_found_current_location), new DialogUtils.DialogCallBack() {
                    @Override
                    public void onClickDialog(DialogInterface pAlertDialog, int pDialogType) {
                        if (mAlertDialog != null) {
                            mAlertDialog.dismiss();
                        }
                    }
                });
            } else {
                mAlertDialog.setMessage(getString(R.string.frag_search_physician_error_not_found_current_location));
            }

            if (!mAlertDialog.isShowing()) {
                mAlertDialog.setCanceledOnTouchOutside(false);
                mAlertDialog.show();
            }

        } else {
            mLatitude = likelyPlaces.get(0).getPlace().getLatLng().latitude;
            mLongitude = likelyPlaces.get(0).getPlace().getLatLng().longitude;
            mLocation = likelyPlaces.get(0).getPlace().getName() + "," + likelyPlaces.get(0).getPlace().getAddress();

            switchFragment(ResultSearchFragment.newInstance(mSpecialtyID, mLatitude, mLongitude, mLocation, mDateFor,
                    mLanguageCode, mFirstName, mLastName, mPhysicianName, mIsInOfficeSearch, mIsAnyLocation));
        }

        likelyPlaces.release();
    }
});

 

1,238 xem 00 hữu ích trả lời –