package tk.wasdennnoch.androidn_ify.ui.emergency.edit;
import android.Manifest;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
public class LaunchEditInfoActivity extends Activity {
private static final int PERMISSIONS_REQUEST = 500;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
checkPermissions();
}
private void checkPermissions() {
if (hasPerm(Manifest.permission.READ_CONTACTS) && hasPerm(Manifest.permission.CALL_PHONE)) {
startEditActivity();
} else {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.READ_CONTACTS, Manifest.permission.CALL_PHONE},
PERMISSIONS_REQUEST);
}
}
@Override
public void onRequestPermissionsResult(int requestCode,
@NonNull String permissions[], @NonNull int[] grantResults) {
switch (requestCode) {
case PERMISSIONS_REQUEST: {
if (grantResults.length > 1
&& grantResults[0] == PackageManager.PERMISSION_GRANTED
&& grantResults[1] == PackageManager.PERMISSION_GRANTED) {
startEditActivity();
} else {
finish();
}
}
}
}
private boolean hasPerm(String perm) {
return ContextCompat.checkSelfPermission(this, perm) == PackageManager.PERMISSION_GRANTED;
}
private void startEditActivity() {
finish();
startActivity(new Intent(this, EditInfoActivity.class));
}
}