Merge branch 'master' into newlj2

This commit is contained in:
lijia 2024-12-25 15:01:46 +08:00
commit d4fd83c8f2
3 changed files with 119 additions and 0 deletions

View File

@ -232,6 +232,10 @@ public class H5Activity extends AppCompatActivity {
} else {
String url = intent.getStringExtra("url");
if (TextUtils.isEmpty(url)) {
ActivityUtils.finishToActivity(MainActivity.class, false);
return;
}
viewFile = intent.getBooleanExtra("view_file", false);
if (url.startsWith("alipay")) {
try {

View File

@ -119,6 +119,9 @@ public class JTTProcess {
//参数 ShippingNoteInfo start 接口中的参数 ShippingNoteInfo
//这里 shippingNoteInfo 信息只需传入运单号和分单号即可
public static void send(Context con,StartOrderBean sob,String remark){
if (sob.getData()==null){
return;
}
ShippingNoteInfo[] snis=new ShippingNoteInfo[1];
ShippingNoteInfo sni=new ShippingNoteInfo();
sni.setShippingNoteNumber(sob.getData().getShippingNoteNumber());

View File

@ -0,0 +1,112 @@
package com.dahe.mylibrary.utils;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.provider.Settings;
/**
* @ClassName PermissionUtils
* @Author john
* @Date 2024/12/19 14:59
* @Description TODO
*/
public class PermissionUtils {
// 私有静态实例防止被外部实例化
private static PermissionUtils instance;
// 私有构造方法防止通过 new 关键字创建实例
private PermissionUtils() {
}
// 获取单例实例
public static PermissionUtils getInstance() {
if (instance == null) {
synchronized (PermissionUtils.class) {
if (instance == null) {
instance = new PermissionUtils();
}
}
}
return instance;
}
/**
* 根据不同手机机型跳转到权限设置页面
*
* @param context 上下文
*/
public void goToAppPermissionSettings(Context context) {
Intent intent = new Intent();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (Build.FINGERPRINT.startsWith("Huawei") || Build.BRAND.startsWith("Huawei")) {
// 华为手机
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", context.getPackageName(), null);
intent.setData(uri);
} else if (Build.FINGERPRINT.startsWith("Xiaomi") || Build.BRAND.startsWith("Xiaomi")) {
// 小米手机
intent.setAction(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION);
Uri uri = Uri.parse("package:" + context.getPackageName());
intent.setData(uri);
} else if (Build.BRAND.equals("Meizu")) {
// 魅族手机
intent.setAction("com.meizu.safe.security.SHOW_APPSEC");
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.putExtra("packageName", context.getPackageName());
} else if (Build.FINGERPRINT.startsWith("OPPO") || Build.BRAND.startsWith("OPPO")) {
// OPPO手机
try {
String pkgName = context.getPackageName();
String className = "com.coloros.safecenter.permission.PermissionManagerActivity";
intent.setClassName("com.coloros.safecenter", className);
intent.putExtra("packageName", pkgName);
intent.putExtra("appName", context.getResources().getString(context.getApplicationInfo().labelRes));
intent.putExtra("opType", "4"); // 4 表示权限管理页面
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
} catch (Exception e) {
// 如果找不到OPPO的特定页面则使用通用页面
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", context.getPackageName(), null);
intent.setData(uri);
}
} else if (Build.FINGERPRINT.startsWith("vivo") || Build.BRAND.startsWith("vivo")) {
// vivo手机
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", context.getPackageName(), null);
intent.setData(uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
} else if (Build.BRAND.equals("samsung")) {
// 三星手机
try {
String pkgName = context.getPackageName();
Intent intent2 = new Intent("android.settings.APPLICATION_DETAILS_SETTINGS");
intent2.addCategory(Intent.CATEGORY_DEFAULT);
intent2.setData(Uri.parse("package:" + pkgName));
intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent2.putExtra("com.android.providers.media.EXTRA_APP_PACKAGE", pkgName);
context.startActivity(intent2);
return; // 使用三星特定的页面不需要继续执行通用代码
} catch (Exception e) {
// 如果三星特定页面失败则使用通用页面
}
} else {
// 其他手机使用通用页面
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", context.getPackageName(), null);
intent.setData(uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
}
} else {
// 低于Android 6.0M的版本使用通用页面
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", context.getPackageName(), null);
intent.setData(uri);
}
context.startActivity(intent);
}
}