以前接触的两个App中总结的知识

Posted ravenzzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以前接触的两个App中总结的知识相关的知识,希望对你有一定的参考价值。

Δ两个Activity之间跳转;

1 Intent i = new Intent(这个Activity的名字.this, 要跳转的Activity的名字.class);
2                 startActivity(i);

Δ获取某权限;

1 ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.权限的名字},
2                     REQUEST_CAMERA_PERMISSION);

并在androidManifest设置;

1 <uses-permission android:name="android.permission.权限的名字" />

检测有无某权限;

1 if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) //获取摄像头权限
2                 == PackageManager.PERMISSION_GRANTED) {
3         }

Δ完整的请求获取某权限过程;

 

if (ContextCompat.checkSelfPermission(CameraActivity.this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
            // 进入这儿表示没有权限
            if (ActivityCompat.shouldShowRequestPermissionRationale(CameraActivity.this, Manifest.permission.CAMERA)) {
                // 提示已经禁止
            } else {
                ActivityCompat.requestPermissions(CameraActivity.this, new String[]{Manifest.permission.CAMERA}, 100);
            }
        } else {
            mCamera = getCameraInstance();
        }

 

 

 

 

为了帮助查找用户可能需要解释的情形,Android 提供了一个实用程序方法,即 shouldShowRequestPermissionRationale()。如果应用之前请求过此权限但用户拒绝了请求,此方法将返回 true。

注:如果用户在过去拒绝了权限请求,并在权限请求系统对话框中选择了 Don’t ask again 选项,此方法将返回 false。如果设备规范禁止应用具有该权限,此方法也会返回 false。

根据测试shouldShowRequestPermissionRationale的返回值主要以下几种情况

第一次打开App时 false
上次弹出权限点击了禁止(但没有勾选“下次不在询问”) true
上次选择禁止并勾选:下次不在询问 false

 转载自:作者:cctcc 来源:CSDN 原文:https://blog.csdn.net/cctcc/article/details/79470514

 

 

 

Δ弹出某提示;

1 Toast.makeText(getApplicationContext(), "你要说的话",Toast.LENGTH_SHORT).show();
//第一个参数:当前的上下文环境,可用getApplicationContext()或this;
//第二个参数:你要说的话;
//第三个参数:显示的时间长短;

以上是关于以前接触的两个App中总结的知识的主要内容,如果未能解决你的问题,请参考以下文章

点餐APP 冲刺二总结

线程学习知识点总结

Android App 在片段中创建 ListView 引用时关闭

告别2016

回归 | js实用代码片段的封装与总结(持续更新中...)

课程总结