|
@@ -2,14 +2,14 @@ package com.usai.redant.apexdrivers;
|
|
|
|
|
|
|
|
|
|
|
|
|
import android.Manifest;
|
|
import android.Manifest;
|
|
|
|
|
+import android.app.AlertDialog;
|
|
|
import android.app.ProgressDialog;
|
|
import android.app.ProgressDialog;
|
|
|
import android.content.ComponentName;
|
|
import android.content.ComponentName;
|
|
|
import android.content.Context;
|
|
import android.content.Context;
|
|
|
|
|
+import android.content.DialogInterface;
|
|
|
import android.content.Intent;
|
|
import android.content.Intent;
|
|
|
import android.content.ServiceConnection;
|
|
import android.content.ServiceConnection;
|
|
|
-import android.content.res.ColorStateList;
|
|
|
|
|
-import android.content.res.Resources;
|
|
|
|
|
-import android.graphics.drawable.BitmapDrawable;
|
|
|
|
|
|
|
+import android.content.pm.PackageManager;
|
|
|
import android.graphics.drawable.Drawable;
|
|
import android.graphics.drawable.Drawable;
|
|
|
import android.location.Location;
|
|
import android.location.Location;
|
|
|
import android.net.Uri;
|
|
import android.net.Uri;
|
|
@@ -18,17 +18,13 @@ import android.os.Bundle;
|
|
|
import android.os.IBinder;
|
|
import android.os.IBinder;
|
|
|
import android.os.PowerManager;
|
|
import android.os.PowerManager;
|
|
|
import android.provider.Settings;
|
|
import android.provider.Settings;
|
|
|
|
|
+import android.support.v4.app.ActivityCompat;
|
|
|
import android.support.v4.app.Fragment;
|
|
import android.support.v4.app.Fragment;
|
|
|
import android.support.v4.app.FragmentManager;
|
|
import android.support.v4.app.FragmentManager;
|
|
|
import android.support.v4.app.FragmentTransaction;
|
|
import android.support.v4.app.FragmentTransaction;
|
|
|
-import android.support.v4.content.ContextCompat;
|
|
|
|
|
-import android.support.v4.graphics.drawable.DrawableCompat;
|
|
|
|
|
-import android.support.v7.app.AppCompatActivity;
|
|
|
|
|
-import android.support.v7.app.WindowDecorActionBar;
|
|
|
|
|
import android.util.Log;
|
|
import android.util.Log;
|
|
|
import android.view.Menu;
|
|
import android.view.Menu;
|
|
|
import android.view.MenuItem;
|
|
import android.view.MenuItem;
|
|
|
-import android.view.View;
|
|
|
|
|
import android.widget.RelativeLayout;
|
|
import android.widget.RelativeLayout;
|
|
|
|
|
|
|
|
import com.usai.redant.apexdrivers.base.BasicActivity;
|
|
import com.usai.redant.apexdrivers.base.BasicActivity;
|
|
@@ -164,9 +160,80 @@ public class MainActivity extends BasicActivity implements LoginFragment.LoginCa
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)
|
|
|
|
|
+ {
|
|
|
|
|
+
|
|
|
|
|
+ if (requestCode == RAUtil.MY_PERMISSIONS_REQUEST)
|
|
|
|
|
+ {
|
|
|
|
|
+ boolean missing=false;
|
|
|
|
|
+ boolean request = false;
|
|
|
|
|
+ for(int i=0;i<grantResults.length;i++)
|
|
|
|
|
+ {
|
|
|
|
|
+
|
|
|
|
|
+ if(grantResults[i]!= PackageManager.PERMISSION_GRANTED)
|
|
|
|
|
+ missing=true;
|
|
|
|
|
+ boolean bshow= ActivityCompat.shouldShowRequestPermissionRationale(this,permissions[i]);
|
|
|
|
|
+ if(bshow)
|
|
|
|
|
+ request = true;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ String msg=null;
|
|
|
|
|
+ if(request)
|
|
|
|
|
+ msg="Apex & Drivers needs some essential permissions.";
|
|
|
|
|
+ else
|
|
|
|
|
+ msg="Apex & Drivers will quit because missing some essential permissions.\nPlease check your system setting.";
|
|
|
|
|
+
|
|
|
|
|
+ if(missing) {
|
|
|
|
|
+ final boolean finalRequest = request;
|
|
|
|
|
+ new AlertDialog.Builder(this)
|
|
|
|
|
+ .setTitle("Warning")
|
|
|
|
|
+ .setMessage(msg)
|
|
|
|
|
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void onClick(DialogInterface dialog, int which) {
|
|
|
|
|
+// checkAllPermission();
|
|
|
|
|
+ if (finalRequest)
|
|
|
|
|
+ checkPermissions();
|
|
|
|
|
+ else
|
|
|
|
|
+ finish();
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ .show();
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ ApexDriverApplication.sharedApplication().initLocation();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ super.onRequestPermissionsResult(requestCode, permissions, grantResults);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
private void checkPermissions() {
|
|
private void checkPermissions() {
|
|
|
|
|
|
|
|
- String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};
|
|
|
|
|
|
|
+// String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};
|
|
|
|
|
+
|
|
|
|
|
+ String[] permissions = {
|
|
|
|
|
+// Manifest.permission.CAMERA,
|
|
|
|
|
+// Manifest.permission.VIBRATE,
|
|
|
|
|
+// Manifest.permission.READ_CONTACTS,
|
|
|
|
|
+ Manifest.permission.READ_PHONE_STATE,
|
|
|
|
|
+ Manifest.permission.WRITE_EXTERNAL_STORAGE,
|
|
|
|
|
+ Manifest.permission.READ_EXTERNAL_STORAGE,
|
|
|
|
|
+ Manifest.permission.RECEIVE_BOOT_COMPLETED,
|
|
|
|
|
+// Manifest.permission.ACCESS_NETWORK_STATE,
|
|
|
|
|
+// Manifest.permission.ACCESS_WIFI_STATE,
|
|
|
|
|
+ Manifest.permission.INTERNET,
|
|
|
|
|
+ Manifest.permission.ACCESS_FINE_LOCATION,
|
|
|
|
|
+//
|
|
|
|
|
+ Manifest.permission.CHANGE_CONFIGURATION
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
RAUtil.checkPermissions(this,permissions);
|
|
RAUtil.checkPermissions(this,permissions);
|
|
|
}
|
|
}
|