133 lines
5.0 KiB
Java
133 lines
5.0 KiB
Java
package com.ea.ironmonkey;
|
|
|
|
import android.app.Activity;
|
|
import android.app.AlertDialog;
|
|
import android.content.DialogInterface;
|
|
import android.content.Intent;
|
|
import android.net.Uri;
|
|
import android.os.Build;
|
|
import android.os.Bundle;
|
|
import android.support.v4.app.ActivityCompat;
|
|
import android.support.v4.content.ContextCompat;
|
|
import android.view.KeyEvent;
|
|
import com.ea.games.nfs13_row.R;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class PermissionsActivity extends Activity {
|
|
private static final int PERMISSIONS_REQUEST = 3;
|
|
|
|
protected void onCreate() {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
checkPermissions();
|
|
} else {
|
|
initActivity();
|
|
}
|
|
}
|
|
|
|
public void checkPermissions() {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
if (ContextCompat.checkSelfPermission(this, "android.permission.WRITE_EXTERNAL_STORAGE") != 0) {
|
|
if (ActivityCompat.shouldShowRequestPermissionRationale(this, "android.permission.WRITE_EXTERNAL_STORAGE")) {
|
|
showPermissionDialog(false);
|
|
return;
|
|
} else {
|
|
requestSecurityPermissions();
|
|
return;
|
|
}
|
|
}
|
|
initActivity();
|
|
return;
|
|
}
|
|
initActivity();
|
|
}
|
|
|
|
@Override // android.app.Activity
|
|
public void onRequestPermissionsResult(int i, String[] strArr, int[] iArr) {
|
|
if (i != 3) {
|
|
return;
|
|
}
|
|
if (iArr.length == 1 && iArr[0] == 0) {
|
|
initActivity();
|
|
} else {
|
|
showPermissionDialog(true);
|
|
}
|
|
}
|
|
|
|
private void showPermissionDialog(final boolean z) {
|
|
runOnUiThread(new Runnable() { // from class: com.ea.ironmonkey.PermissionsActivity.1
|
|
@Override // java.lang.Runnable
|
|
public void run() {
|
|
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
|
builder.setMessage(R.string.STR_PERMISSION_TEXT);
|
|
builder.setPositiveButton(R.string.STR_PERMISSION_OK, new DialogInterface.OnClickListener() { // from class: com.ea.ironmonkey.PermissionsActivity.1.1
|
|
@Override // android.content.DialogInterface.OnClickListener
|
|
public void onClick(DialogInterface dialogInterface, int i) {
|
|
if (!z) {
|
|
PermissionsActivity.this.requestSecurityPermissions();
|
|
return;
|
|
}
|
|
Intent intent = new Intent("android.settings.APPLICATION_DETAILS_SETTINGS", Uri.parse("package:" + PermissionsActivity.this.getPackageName()));
|
|
intent.addFlags(8388608);
|
|
PermissionsActivity.this.startActivityForResult(intent, 3);
|
|
}
|
|
});
|
|
builder.setNegativeButton(R.string.STR_PERMISSION_CANCEL, new DialogInterface.OnClickListener() { // from class: com.ea.ironmonkey.PermissionsActivity.1.2
|
|
@Override // android.content.DialogInterface.OnClickListener
|
|
public void onClick(DialogInterface dialogInterface, int i) {
|
|
PermissionsActivity.this.finish();
|
|
}
|
|
});
|
|
AlertDialog create = builder.create();
|
|
create.setCanceledOnTouchOutside(false);
|
|
create.setOnKeyListener(new DialogInterface.OnKeyListener() { // from class: com.ea.ironmonkey.PermissionsActivity.1.3
|
|
@Override // android.content.DialogInterface.OnKeyListener
|
|
public boolean onKey(DialogInterface dialogInterface, int i, KeyEvent keyEvent) {
|
|
if (i != 4) {
|
|
return true;
|
|
}
|
|
PermissionsActivity.this.finish();
|
|
dialogInterface.dismiss();
|
|
return true;
|
|
}
|
|
});
|
|
create.show();
|
|
}
|
|
});
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public void requestSecurityPermissions() {
|
|
ActivityCompat.requestPermissions(this, new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 3);
|
|
}
|
|
|
|
@Override // android.app.Activity
|
|
public void onCreate(Bundle bundle) {
|
|
super.onCreate(bundle);
|
|
onCreate();
|
|
}
|
|
|
|
@Override // android.app.Activity
|
|
public void onActivityResult(int i, int i2, Intent intent) {
|
|
super.onActivityResult(i, i2, intent);
|
|
if (i == 3) {
|
|
if (ContextCompat.checkSelfPermission(this, "android.permission.WRITE_EXTERNAL_STORAGE") == 0) {
|
|
initActivity();
|
|
return;
|
|
} else {
|
|
showPermissionDialog(true);
|
|
return;
|
|
}
|
|
}
|
|
initActivity();
|
|
}
|
|
|
|
private void initActivity() {
|
|
try {
|
|
startActivity(new Intent(this, (Class<?>) ObbActivity.class));
|
|
finish();
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|