[안드로이드] 권한 관련 코드들

2021. 11. 23. 17:41앱개발

1. Manifest.xml

1) 전화번호부

    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>

 

2. build.gradle

dependencies {

    ----기존에 있던 목록--------------------------------------------
    implementation 'com.github.pedroSG94:AutoPermissions:1.0.3'
}

3. setting.gradle

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        ------기존에 있던 목록-----------------------------------
        maven {url "https://www.jitpack.io"}
    }
}

 

4. 인터페이스 상속

//변경 전
public class MainActivity extends AppCompatActivity

//변경 후
public class MainActivity extends AppCompatActivity implements AutoPermissionsListener

 

5. onCreate

@Override
protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	//---작성 코드들 ------------------------------
	AutoPermissions.Companion.loadAllPermissions(this, 101);
}

6. Generate

@Override
    public void onDenied(int i, String[] strings) {

    }

    @Override
    public void onGranted(int i, String[] strings) {

    }

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        AutoPermissions.Companion.parsePermissions(this, requestCode, permissions,  this);
    }