1.在src/main/AndroidManifest.xml中添加:
<uses-permission android:name="android.permission.CAMERA" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2.在MainActivaty中定义函数getPermissionCamera:
/*** 确认camera权限* @param activity* @return*/public static boolean getPermissionCamera(Activity activity) {int cameraPermissionCheck = ContextCompat.checkSelfPermission(activity, Manifest.permission.CAMERA);int readPermissionCheck = ContextCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE);int writePermissionCheck = ContextCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);if (cameraPermissionCheck != PackageManager.PERMISSION_GRANTED|| readPermissionCheck != PackageManager.PERMISSION_GRANTED|| writePermissionCheck != PackageManager.PERMISSION_GRANTED) {String[] permissions = new String[]{Manifest.permission.CAMERA,Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};ActivityCompat.requestPermissions(activity,permissions,0);return false;} else {return true;}}
3.在MainActivity的onCreate函数中调用:
@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.mybutton);mytext = (TextView) findViewById(R.id.mytext);Mybutton listener = new Mybutton();button.setOnClickListener(listener);boolean havePermission = getPermissionCamera(this);Log.i(TAG, "getPermissionCamera " + havePermission);display();}