Package com.inavi.mapsdk.maps
Class FusedLocationProvider
java.lang.Object
com.inavi.mapsdk.maps.FusedLocationProvider
- All Implemented Interfaces:
LocationProvider
Google Play 서비스의 Fused Location Provider를 사용하는 LocationProvider 구현체 클래스.
AndroidManifest.xml에 ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION 권한을 명시해야 합니다.
<manifest>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
이 클래스는 런타임 권한 처리 기능(ActivityResultContracts.RequestPermission)을 내장하고 있습니다.
필요 시 자동으로 권한을 요청하며, 객체를 Activity 또는 Fragment의 Lifecycle.Event#ON_CREATE 생명주기에 생성해야 합니다.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.inavi.mapsdk.maps.LocationProvider
LocationProvider.OnLocationChangedListener -
Constructor Summary
ConstructorsConstructorDescriptionFusedLocationProvider(Activity activity, int requestCode) Deprecated.FusedLocationProvider(AppCompatActivity activity, OnPermissionResultCallback callback) AppCompatActivity를 사용하는 생성자.
필요 시ActivityResultContracts.RequestPermission로 권한을 요청합니다.
객체를Activity의Lifecycle.Event#ON_CREATE생명주기에 생성해야 합니다.FusedLocationProvider(Fragment fragment, int requestCode) Deprecated.FusedLocationProvider(Fragment)로 대체됩니다.FusedLocationProvider(Fragment fragment, OnPermissionResultCallback callback) Fragment를 사용하는 생성자.
필요 시ActivityResultContracts.RequestPermission로 권한을 요청합니다.
객체를Fragment의Lifecycle.Event#ON_CREATE생명주기에 생성해야 합니다. -
Method Summary
Modifier and TypeMethodDescriptionvoidInaviMap에서 위치 추적 기능이 활성화 되었을 경우 호출되는 콜백 함수.voidInaviMap에서 위치 추적 기능이 비활성화 되었을 호출되는 콜백 함수.booleanonRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) Deprecated.FusedLocationProvider(AppCompatActivity)생성자나FusedLocationProvider(Fragment)생성자를 통한 객체 생성 시onRequestPermissionsResult(int, String[], int[])메서드 연결 없이 자체 권한 처리되어 활성화됩니다.
-
Constructor Details
-
FusedLocationProvider
Deprecated.FusedLocationProvider(AppCompatActivity)로 대체됩니다.Activity를 사용하는 생성자.
필요 시Activity.requestPermissions(String[], int)로 권한을 요청하며
결과를onRequestPermissionsResult(int, String[], int[])에 연결하여 활성화합니다.- Parameters:
activity- 권한을 요청할Activity객체requestCode- 권한 요청 코드
-
FusedLocationProvider
public FusedLocationProvider(Fragment fragment, int requestCode) Deprecated.FusedLocationProvider(Fragment)로 대체됩니다.Fragment를 사용하는 생성자. 필요 시Fragment#requestPermissions(String[], int)로 권한을 요청하며
결과를onRequestPermissionsResult(int, String[], int[])에 연결하여 활성화합니다.- Parameters:
fragment- 권한을 요청할Fragment객체requestCode- 권한 요청 코드
-
Method Details
-
deactivate
public void deactivate()
비활성화되면InaviMap에서 위치 추적 기능이 비활성화 되었을 호출되는 콜백 함수.activate(OnLocationChangedListener)에서 설정된listener의 콜백 함수가 더 이상 호출되어서는 안 됩니다.- Specified by:
deactivatein interfaceLocationProvider- See Also:
-
onRequestPermissionsResult
public boolean onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) Deprecated.FusedLocationProvider(AppCompatActivity)생성자나FusedLocationProvider(Fragment)생성자를 통한 객체 생성 시onRequestPermissionsResult(int, String[], int[])메서드 연결 없이 자체 권한 처리되어 활성화됩니다.- Parameters:
requestCode- onRequestPermissionsResult()로 전달받은 requestCodepermissions- onRequestPermissionsResult()로 전달받은 permissionsgrantResults- onRequestPermissionsResult()로 전달받은 grantResults- Returns:
- true : 권한이 처리됨 (
requestCode가 생성자에 지정한 requestCode와 동일할 경우)
false : 권한이 처리되지 않음
-
FusedLocationProvider(AppCompatActivity)로 대체됩니다.