[android] 연락처 접근 권한
안드로이드 앱을 개발할 때, 사용자의 연락처에 접근해야 하는 경우가 있습니다. 이때 앱이 사용자의 연락처에 접근할 수 있도록 권한을 요청해야 합니다. 연락처 접근 권한을 요청하는 방법과 관련된 내용을 다루어 보겠습니다.
1. 연락처 접근 권한 추가하기
AndroidManifest.xml 파일에서 다음과 같이 READ_CONTACTS 권한을 추가해야 합니다.
<uses-permission android:name="android.permission.READ_CONTACTS" />
위의 코드를 추가하면 앱이 보호된 연락처 데이터에 접근할 수 있는 권한을 요청하게 됩니다.
2. 권한 요청하기
안드로이드 6.0 (API 레벨 23) 이상에서는 사용자에게 앱이 실행되는 동안에 요청하는 권한을 사용자가 수락해야 합니다. 따라서 앱이 실행될 때 필요한 권한을 요청하는 코드를 추가해야 합니다.
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_READ_CONTACTS = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_CONTACTS}, REQUEST_READ_CONTACTS);
}
}
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
if (requestCode == REQUEST_READ_CONTACTS) {
// 권한 요청에 대한 응답 처리
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 권한이 허용된 경우의 동작 처리
} else {
// 권한이 거부된 경우의 동작 처리
}
return;
}
}
}
위의 코드에서 앱이 실행될 때 READ_CONTACTS 권한이 허용되지 않았다면 사용자에게 권한 요청 다이얼로그를 표시하게 됩니다.
이제, 연락처에 접근할 수 있는 권한을 요청하는 방법에 대해 알아봤습니다. 안드로이드 앱을 개발할 때, 사용자의 개인정보를 처리하는 경우에는 권한 요청 및 관련 법률에 대해 충분히 고려해야 합니다.