장치에서 제한하는 기능을 사용하기 위해선 해당 권한을 선언해야 하고, 중요한 권한에 대해서는 사용자에게 요청을 해서 권한을 받아야 사용할 수 있다.

 

권한은 manifests 에 선언한다.

 

네트워크 권한

// app에서 네트워크를 사용하려면 메니페스트에 다음 두 줄을 추가한다. <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

 

위치기반(GPS) 권한

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

 

블루투스 권한

<uses-permission android:name="android.permission.BLUETOOTH" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

 

외부 저장소 권한

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

 

권한 요청 및 결과 처리

activity에서 필요한 권한을 요청하고, 결과를 받아서 결과에 따른 작업을 처리한다.

//권한 요청 ActivityCompat.requestPermissions(this, PERMISSIONS, PERMISSION_REQUEST_CODE)  const val PERMISSION_REQUEST_CODE = 1000 val PERMISSIONS = arrayOf( 	android.Manifest.permission.ACCESS_FINE_LOCATION   ,android.Manifest.permission.ACCESS_COARSE_LOCATION )  //권한 요청 결과 처리 override fun onRequestPermissionsResult(         requestCode: Int,         permissions: Array<out String>,         grantResults: IntArray ) { 		super.onRequestPermissionsResult(requestCode, permissions, grantResults)     when(requestCode) { 		    PERMISSION_REQUEST_CODE -> { 		        todoFunction() 				} 	  } }

'Android > Android기본' 카테고리의 다른 글

Context  (0) 2021.11.24
Thread  (0) 2021.11.24
AddView  (0) 2021.11.24
ListView  (0) 2021.11.24
RecyclerView  (0) 2021.11.24

+ Recent posts