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
@@ -212,5 +212,5 @@ public class Constant {
public static String Repotr_app_key="";
//uniapp小程序appid
public static String uniapp_mp_appid="__UNI__89F511F";
public static String uniapp_mp_appid="__UNI__89F511F";//__UNI__09BE685 __UNI__89F511F
}
@@ -1,11 +1,20 @@
package cn.shangyu.gdxzExpert.utils;
import static cn.shangyu.gdxzExpert.utils.Constant.uniapp_mp_appid;
import static cn.shangyu.gdxzExpert.utils.Url.url_path;
import static cn.shangyu.gdxzExpert.utils.Url.weurl;
import static com.taobao.accs.ACCSManager.mContext;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import org.json.JSONObject;
import java.util.Map;
import cn.shangyu.gdxzExpert.activity.AccumulatePointsActivity;
import cn.shangyu.gdxzExpert.activity.BindWeChatActivity;
@@ -37,11 +46,16 @@ import cn.shangyu.gdxzExpert.activity.SendMindActivity;
import cn.shangyu.gdxzExpert.activity.SettingVersionActivity;
import cn.shangyu.gdxzExpert.activity.TestingActivity;
import cn.shangyu.gdxzExpert.activity.VideoActivity;
import cn.shangyu.gdxzExpert.application.BaseApplication;
import cn.shangyu.gdxzExpert.big.activity.BiggNewPatientActivity;
import cn.shangyu.gdxzExpert.big.activity.NormNewPatientActivity;
import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.polyvplayer.MyDownLoadVideoActivity;
import cn.shangyu.gdxzExpert.polyvplayer.QualityCourseActivity;
import cn.shangyu.gdxzExpert.splash.UniappSplashView;
import io.dcloud.feature.sdk.DCUniMPSDK;
import io.dcloud.feature.sdk.Interface.IUniMP;
import io.dcloud.feature.unimp.config.UniMPOpenConfiguration;
/**
* Created by WANGChengXin on 2020/3/10.
@@ -95,7 +109,9 @@ public class MyUserIconUtil {
}
else if("肝胆视频".equals(name))
{
context.startActivity(new Intent(context, VideoActivity.class));
// context.startActivity(new Intent(context, VideoActivity.class));
// 调用公共方法打开uniapp mp
showUniMp(context, "/pages_app/video/video");
}
else if("公益咨询".equals(name))
{
@@ -103,7 +119,9 @@ public class MyUserIconUtil {
}
else if("指南杂志".equals(name)||"我的图书馆".equals(name)||"指南工具".equals(name))
{
context.startActivity(new Intent(context, MyLibraryActivity.class));
// context.startActivity(new Intent(context, MyLibraryActivity.class));
// 调用公共方法打开uniapp mp
showUniMp(context, "/pages_app/zhinan/zhinan");
}
else if ("专题e站".equals(name)){
Intent intent1 = new Intent(context, NewsDetailActivity.class);
@@ -225,4 +243,46 @@ public class MyUserIconUtil {
}
/**
* 展示uniapp mp - 公共方法
* @param context 上下文
* @param targetPath
*/
public static void showUniMp(Context context, String targetPath) {
try {
String uuid = SharePrefUtil.getString(context, Constant.uuid, "");
if(StringUtil.isEmpty(uuid)){
return;
}
String access_token = SharePrefUtil.getString(context, "access_token", "");
JSONObject userInfo = new JSONObject();
userInfo.put("uuid", SharePrefUtil.getString(context, Constant.uuid, ""));
userInfo.put("realName", SharePrefUtil.getString(context, Constant.realName, ""));
userInfo.put("mobile", SharePrefUtil.getString(context, "mobile", ""));
userInfo.put("photo", SharePrefUtil.getString(context, Constant.photo, ""));
UniMPOpenConfiguration uniMPOpenConfiguration = new UniMPOpenConfiguration();
uniMPOpenConfiguration.splashClass = UniappSplashView.class;
uniMPOpenConfiguration.extraData.put("darkmode", "light");
uniMPOpenConfiguration.extraData.put("apiHost", url_path);
uniMPOpenConfiguration.extraData.put("token", access_token);
uniMPOpenConfiguration.extraData.put("userInfo", userInfo);
IUniMP uniapp_MP_cash = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
if(uniapp_MP_cash != null && uniapp_MP_cash.isRunning()){
uniapp_MP_cash.sendUniMPEvent("goPage", targetPath);
uniapp_MP_cash.showUniMP();
}else{
if(StringUtil.notEmpty(targetPath)){
uniMPOpenConfiguration.extraData.put("targetPath", targetPath);
}
IUniMP uniapp_MP = DCUniMPSDK.getInstance().openUniMP(mContext, uniapp_mp_appid, uniMPOpenConfiguration);
BaseApplication.getUniMPCaches().put(uniapp_MP.getAppid(), uniapp_MP);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
@@ -0,0 +1,6 @@
package cn.shangyu.gdxzExpert.utils;
import androidx.core.content.FileProvider;
public class UniappFileProvider extends FileProvider {
}
@@ -148,8 +148,18 @@ public class UpdateVersionUtils {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// downloadApp 使用 Environment.getExternalStorageDirectory(),这是公共存储,需要权限
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (com.github.dfqin.grantor.PermissionsUtil.hasPermission(ct, 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 = com.github.dfqin.grantor.PermissionsUtil.hasPermission(ct, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE);
}
// Android 13+ 保存到公共存储仍需要权限(但通常使用应用私有目录更好)
if (hasPermission) {
// 下载
downloadApp();
} else {
@@ -163,7 +173,7 @@ public class UpdateVersionUtils {
@Override
public void permissionDenied(@NonNull String[] permissions) {
//用户拒绝了访问读写的申请
//用户拒绝了访问存储的申请
//
}