| | |
| | | import android.provider.Settings; |
| | | import android.view.KeyEvent; |
| | | |
| | | import com.jaeger.library.StatusBarUtil; |
| | | |
| | | import java.lang.reflect.Method; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | |
| | | * 需要进行检测的权限数组 |
| | | */ |
| | | protected String[] needPermissions = { |
| | | Manifest.permission.INTERNET, |
| | | Manifest.permission.ACCESS_NETWORK_STATE, |
| | | Manifest.permission.WAKE_LOCK, |
| | | Manifest.permission.RECORD_AUDIO, |
| | | Manifest.permission.MODIFY_AUDIO_SETTINGS, |
| | | Manifest.permission.CAMERA, |
| | | Manifest.permission.READ_EXTERNAL_STORAGE, |
| | | Manifest.permission.WRITE_EXTERNAL_STORAGE, |
| | | Manifest.permission.CAMERA |
| | | }; |
| | | |
| | | public static final int PERMISSON_REQUESTCODE = 0; |
| | |
| | | if(Build.VERSION.SDK_INT > 28 |
| | | && getApplicationContext().getApplicationInfo().targetSdkVersion > 28) { |
| | | needPermissions = new String[] { |
| | | Manifest.permission.INTERNET, |
| | | Manifest.permission.ACCESS_NETWORK_STATE, |
| | | Manifest.permission.WAKE_LOCK, |
| | | Manifest.permission.RECORD_AUDIO, |
| | | Manifest.permission.MODIFY_AUDIO_SETTINGS, |
| | | Manifest.permission.CAMERA, |
| | | Manifest.permission.READ_EXTERNAL_STORAGE, |
| | | Manifest.permission.WRITE_EXTERNAL_STORAGE, |
| | | Manifest.permission.CAMERA |
| | | }; |
| | | } |
| | | setStatusBarTranslucent(); |
| | | } |
| | | |
| | | /** |
| | |
| | | return true; |
| | | } |
| | | |
| | | // @TargetApi(23) |
| | | // public void onRequestPermissionsResult(int requestCode, |
| | | // String[] permissions, int[] paramArrayOfInt) { |
| | | // if (requestCode == PERMISSON_REQUESTCODE) { |
| | | // if (!verifyPermissions(paramArrayOfInt)) { |
| | | // showMissingPermissionDialog(); |
| | | // isNeedCheck = false; |
| | | // }else{ |
| | | // //授权成功 |
| | | // |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | // /** |
| | | // * 显示提示信息 |
| | | // * |
| | | // * @since 2.5.0 |
| | | // * |
| | | // */ |
| | | // public void showMissingPermissionDialog() { |
| | | // AlertDialog.Builder builder = new AlertDialog.Builder(this); |
| | | // builder.setTitle(R.string.gd_notifyTitle); |
| | | // builder.setMessage(R.string.gd_notifyMsg); |
| | | // |
| | | // // 拒绝, 退出应用 |
| | | // builder.setNegativeButton(R.string.gd_cancel, |
| | | // new DialogInterface.OnClickListener() { |
| | | // @Override |
| | | // public void onClick(DialogInterface dialog, int which) { |
| | | // finish(); |
| | | // } |
| | | // }); |
| | | // |
| | | // builder.setPositiveButton(R.string.gd_setting, |
| | | // new DialogInterface.OnClickListener() { |
| | | // @Override |
| | | // public void onClick(DialogInterface dialog, int which) { |
| | | // startAppSettings(); |
| | | // } |
| | | // }); |
| | | // |
| | | // builder.setCancelable(false); |
| | | // |
| | | // builder.show(); |
| | | // } |
| | | |
| | | /** |
| | | * 启动应用的设置 |
| | | * |
| | |
| | | public void setRequestPermissionsListener(RequestPermissionsListener mRequestPermissionsListener) { |
| | | mRequestPermissionsListener = mRequestPermissionsListener; |
| | | } |
| | | |
| | | // 将StatusBar设置为透明 |
| | | public void setStatusBarTranslucent() { |
| | | StatusBarUtil.setTranslucentForImageViewInFragment(this, |
| | | 0, null); |
| | | StatusBarUtil.setLightMode(this); |
| | | } |
| | | } |