This commit is contained in:
2025-12-15 14:10:54 +08:00
parent 434f134f53
commit 2491213ca6
361 changed files with 7533 additions and 5354 deletions
@@ -86,9 +86,22 @@ public class BigMettingActivity extends BaseActivity implements
@Override
public void onClick(View view) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (PermissionsUtil.hasPermission(BigMettingActivity.this, Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
//有访问摄像头的权限,读写内存,网络定位,打电话,读取短信,录音,通讯录
// Android 13+ (API 33+) 拍照主要需要 CAMERA 权限
boolean hasPermission;
String[] permissionsToRequest;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
// Android 13+ 拍照主要需要 CAMERA 权限
hasPermission = PermissionsUtil.hasPermission(BigMettingActivity.this, Manifest.permission.CAMERA);
permissionsToRequest = new String[]{Manifest.permission.CAMERA};
} else {
// Android 12及以下需要 CAMERA 和存储权限
hasPermission = PermissionsUtil.hasPermission(BigMettingActivity.this, Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE);
permissionsToRequest = new String[]{Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
}
if (hasPermission) {
//有访问摄像头的权限
startToCapture();
} else {
EasyWindow.with(BigMettingActivity.this).setGravity(Gravity.TOP).setYOffset(200).setWidth(1000)
@@ -98,17 +111,17 @@ public class BigMettingActivity extends BaseActivity implements
@Override
public void permissionGranted(@NonNull String[] permissions) {
EasyWindow.cancelAll();
//用户授予了访问读取短信的权限
//用户授予了访问摄像头的权限
startToCapture();
}
@Override
public void permissionDenied(@NonNull String[] permissions) {
EasyWindow.cancelAll();
//用户拒绝了访问读取短信的申请
//用户拒绝了访问摄像头的申请
}
}, new String[]{Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE});
}, permissionsToRequest);
}
}else {
@@ -147,8 +147,18 @@ public class BigKejianAdapter extends RecyclerView.Adapter<BigKejianAdapter.View
}
else
{
// 文件保存到应用私有目录(getExternalFilesDir),Android 13+ 不需要存储权限
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (PermissionsUtil.hasPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
boolean needsPermission = Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU;
boolean hasPermission = true;
if (needsPermission) {
// Android 12及以下需要存储权限
hasPermission = PermissionsUtil.hasPermission(context, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE);
}
// Android 13+ 保存到应用私有目录不需要权限
if (hasPermission) {
// 下载
downloadPdfen(
Url.urlHtml +datas.get(position).getPath(),