zoukankan      html  css  js  c++  java
  • 以前接触的两个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;
    //第二个参数:你要说的话;
    //第三个参数:显示的时间长短;

  • 相关阅读:
    IDA Supported Processors
    Hex-Rays Decompiler
    USB ISP(ICSP) Open Programmer < PWM ADC HV PID >
    A SCSI command code -- SIMPLIFIED DIRECT-ACCESS DEVICE (RBC)
    How to match between physical usb device and its drive letter?
    记录一下公司数据库升级的步骤
    Windows2003 SQL2005解决系统Administrator密码不知道的问题
    在SSMS里批量删除表、存储过程等各种对象
    用SQLSERVER里的bcp命令或者bulkinsert命令也可以把dat文件导入数据表
    分享一张SQLSERVER执行流程的图片
  • 原文地址:https://www.cnblogs.com/Ravenzzz/p/9762520.html
Copyright © 2011-2022 走看看