更新优化

This commit is contained in:
2026-11-03 09:04:54 +08:00
parent f67f062bfe
commit 5c1a3dc059
199 changed files with 2562 additions and 439 deletions
@@ -1,5 +1,6 @@
package cn.shangyu.gdxzExpert.activity;
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
import static cn.shangyu.gdxzExpert.utils.CommonUtil.BigModule;
import android.app.AlertDialog;
@@ -52,8 +53,10 @@ import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.ui.CustomProgressDialog;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.ECAlertDialog;
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
@@ -384,8 +387,10 @@ public class AccumulatePointsActivity extends BaseActivity implements OnCallBack
}
else
{
Intent intent = new Intent(AccumulatePointsActivity.this, PointsMallActivity.class);
startActivity(intent);
// Intent intent = new Intent(AccumulatePointsActivity.this, PointsMallActivity.class);
// startActivity(intent);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
}
} else if (id == R.id.ll_integraltickit) {//积分券
Intent intent1 = new Intent(AccumulatePointsActivity.this, IntegralTicketActivity.class);
@@ -35,6 +35,7 @@ import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
@@ -129,7 +130,7 @@ public class CoollectCourseActivity extends BaseActivity implements
pageParams.put("src", DataList.get(arg2-1).path);
pageParams.put("uuid", DataList.get(arg2-1).other_uuid);
pageParams.put("from", "collect");
MyUserIconUtil.showUniMp(mActivity, "/pages_app/pptDetail/pptDetail", pageParams);
UniappUtil.showUniMp(mActivity, "/pages_app/pptDetail/pptDetail", pageParams);
}
@Override
@@ -38,8 +38,10 @@ import cn.shangyu.gdxzExpert.bean.FuCardBean;
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
public class DuiFuliActivity extends BaseActivity implements OnCallBackFromNet {
@@ -238,9 +240,11 @@ public class DuiFuliActivity extends BaseActivity implements OnCallBackFromNet {
// broadc.setType("qiandao");
// startActivity(broadc);
} else if (id == R.id.r_top) {
Intent intent1=new Intent(DuiFuliActivity.this,MyWelfAreActivity.class);
intent1.putExtra("changeFragment",2);
startActivity(intent1);
// Intent intent1=new Intent(DuiFuliActivity.this,MyWelfAreActivity.class);
// intent1.putExtra("changeFragment",2);
// startActivity(intent1);
UniappUtil.showUniMp(DuiFuliActivity.this, "/pages_app/myWelfare/myWelfare", null);
}
}
@@ -290,10 +294,10 @@ public class DuiFuliActivity extends BaseActivity implements OnCallBackFromNet {
public void onClick(View v) {
dialog4.dismiss();
Intent intent1=new Intent(DuiFuliActivity.this,MyWelfAreActivity.class);
intent1.putExtra("changeFragment",2);
startActivity(intent1);
// Intent intent1=new Intent(DuiFuliActivity.this,MyWelfAreActivity.class);
// intent1.putExtra("changeFragment",2);
// startActivity(intent1);
UniappUtil.showUniMp(DuiFuliActivity.this, "/pages_app/myWelfare/myWelfare", null);
}
});
@@ -25,6 +25,7 @@ import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.view.RollViewPager;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
@@ -120,7 +121,8 @@ public class GandanConsultActivity extends BaseActivity implements View.OnClickL
} else if (id == R.id.rl_video) {//肝胆新闻
startActivity(new Intent(ct, NewsActivity.class));
} else if (id == R.id.rl_lczhaomu) {//肝胆会议
startActivity(new Intent(ct, GandanMeetingActivity.class));
// startActivity(new Intent(ct, GandanMeetingActivity.class));
UniappUtil.showUniMp(ct, "/pages/live/live", null);
}
}
@@ -197,6 +197,7 @@ import cn.shangyu.gdxzExpert.utils.StreamTool;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.UpdateVersionUtils;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.view.viewbadger.BadgeView;
@@ -469,7 +470,7 @@ public class MainActivity extends BaseActivity implements
@Override
public void onClick(View v) {
MyUserIconUtil.showUniMp(MainActivity.this, "/pages_app/patientVideo/patientVideo", null);
UniappUtil.showUniMp(MainActivity.this, "/pages_app/patientVideo/patientVideo", null);
// startActivity(new Intent(ct,PatientVideoActivity.class));
}
});
@@ -640,7 +641,7 @@ public class MainActivity extends BaseActivity implements
Intent intent = new Intent(BaseApplication.getContext(), NewSystemMessageActivity.class);
intent.putExtra("module",2);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
// 处理自定义通知消息
Notification notification1 = new NotificationCompat.Builder(MainActivity.this,"随访消息")
.setAutoCancel(true)
@@ -664,7 +665,7 @@ public class MainActivity extends BaseActivity implements
saveUnreadFollow();
Intent intent = new Intent(BaseApplication.getContext(), NormNewPatientActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
// 处理自定义通知消息
Notification notification1 = new NotificationCompat.Builder(MainActivity.this,"随访消息")
.setAutoCancel(true)
@@ -692,7 +693,7 @@ public class MainActivity extends BaseActivity implements
saveUnreadFollow();
Intent intent = new Intent(BaseApplication.getContext(), NormNewPatientActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
// 处理自定义通知消息
Notification notification1 = new NotificationCompat.Builder(MainActivity.this,"随访消息")
.setAutoCancel(true)
@@ -721,7 +722,7 @@ public class MainActivity extends BaseActivity implements
{
Intent intent = new Intent(BaseApplication.getContext(), MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
// 处理自定义通知消息
Notification notification1 = new NotificationCompat.Builder(MainActivity.this,"随访消息")
.setAutoCancel(true)
@@ -742,7 +743,7 @@ public class MainActivity extends BaseActivity implements
{
Intent intent = new Intent(BaseApplication.getContext(), MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
// 处理自定义通知消息
Notification notification1 = new NotificationCompat.Builder(MainActivity.this,"随访消息")
@@ -1214,12 +1215,12 @@ public class MainActivity extends BaseActivity implements
changeNews();
} else if (checkedId == R.id.tab_rbn_kepu) {
mToolbar.setBackgroundColor(getResources().getColor(R.color.top_bg));
mToolbar.getBackground().setAlpha(255);
mRg_kepu.setVisibility(View.VISIBLE);
mV_kp.setVisibility(View.VISIBLE);
// mToolbar.setBackgroundColor(getResources().getColor(R.color.top_bg));
// mToolbar.getBackground().setAlpha(255);
// mRg_kepu.setVisibility(View.VISIBLE);
// mV_kp.setVisibility(View.VISIBLE);
mRb_published.setChecked(true);
top_sgin.setVisibility(View.GONE);
// top_sgin.setVisibility(View.GONE);
MobclickAgent.onEvent(this, EXPERT_TAB_TEACH);
// mRb_teach.setTextColor(getResources().getColor(R.color.tab_text_sel));
@@ -1238,7 +1239,10 @@ public class MainActivity extends BaseActivity implements
// tab_rbn_my.setCompoundDrawablesWithIntrinsicBounds(null,
// getResources().getDrawable(R.drawable.home_my_nor), null, null);
changePatientZhongxin();
// changePatientZhongxin();
showUniMp(true, "/pages/patientClass/patientClass");
} else if (checkedId == R.id.tab_rbn_home) {
mToolbar.setBackgroundColor(getResources().getColor(R.color.top_bg));
mRg_kepu.setVisibility(View.GONE);
@@ -1351,7 +1355,7 @@ public class MainActivity extends BaseActivity implements
// //没有用
// }
showUniMp(true);
showUniMp(true, "/pages/live/live");
} else if (checkedId == R.id.tab_rbn_my) {
@@ -1403,7 +1407,7 @@ public class MainActivity extends BaseActivity implements
};
//展示uniapp mp
public void showUniMp(boolean showLoading){
public void showUniMp(boolean showLoading, String targetPath){
if(showLoading){
showFullScreenLoading();
}
@@ -1419,7 +1423,7 @@ public class MainActivity extends BaseActivity implements
sendJsonPostParamtoNetSignMD5(getAccessToken, param, ACCESS_TOKEN,this);
}
MyUserIconUtil.showUniMp(MainActivity.this, "/pages/live/live", null);
UniappUtil.showUniMp(MainActivity.this, targetPath, null);
if(showLoading) {
hideFullScreenLoading();
}
@@ -1760,7 +1764,7 @@ public class MainActivity extends BaseActivity implements
top_right_system_msg.setImageResource(R.drawable.my_message_icon);
top_sao.setVisibility(View.GONE);
top_search.setVisibility(View.VISIBLE);
top_search.setOnClickListener(new OnClickListener() {
top_search.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
@@ -1813,8 +1817,8 @@ public class MainActivity extends BaseActivity implements
}
needreportSimple("read_message");
MobclickAgent.onEvent(MainActivity.this, EXPERT_HOME_MESSGAE);
startActivity(new Intent(ct, NewSystemMessageActivity.class));
// startActivity(new Intent(ct, NewSystemMessageActivity.class));
showUniMp(true, "/pages_app/msg/msg");
// startActivity(new Intent(ct, SystemMessageActivity.class));
// SharePrefUtil.saveBoolean(ct, "isHaveSysMsg", false);
// if (badgeSysMsg != null) {
@@ -2071,18 +2075,23 @@ public class MainActivity extends BaseActivity implements
protected void onResume() {
LogUtil.i("onResume: ", current_tab_id+"");
if(current_tab_id == R.id.tab_rbn_donation && BaseApplication.auto_show_unimp){
if((current_tab_id == R.id.tab_rbn_donation || current_tab_id == R.id.tab_rbn_kepu) && BaseApplication.auto_show_unimp){
long current_timestmp = System.currentTimeMillis();
//防止无限循环打开
if(current_timestmp - BaseApplication.auto_show_unimp_timestamp > 1.5 * 1000){
BaseApplication.auto_show_unimp_timestamp = current_timestmp;
showUniMp(true);
if(current_tab_id == R.id.tab_rbn_donation){
showUniMp(true, "/pages/live/live");
}else if(current_tab_id == R.id.tab_rbn_kepu){
showUniMp(true, "/pages/patientClass/patientClass");
}
}else{
//触发错误次数
BaseApplication.auto_show_unimp_error_times ++;
//错误次数大于5,则关闭小程序
if(BaseApplication.auto_show_unimp_error_times > 5){
MyUserIconUtil.closeUniMP();
UniappUtil.closeUniMP();
BaseApplication.auto_show_unimp_error_times = 0;
}
}
@@ -2995,10 +3004,10 @@ public class MainActivity extends BaseActivity implements
btn_sure.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent(MainActivity.this, MyWelfAreActivity.class);
startActivity(intent1);
dialog4.dismiss();
// Intent intent1 = new Intent(MainActivity.this, MyWelfAreActivity.class);
// startActivity(intent1);
dialog4.dismiss();
UniappUtil.showUniMp(MainActivity.this, "/pages_app/myWelfare/myWelfare", null);
}
});
@@ -3036,10 +3045,11 @@ public class MainActivity extends BaseActivity implements
btn_sure.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent(MainActivity.this, MyWelfAreActivity.class);
startActivity(intent1);
dialog4.dismiss();
// Intent intent1 = new Intent(MainActivity.this, MyWelfAreActivity.class);
// startActivity(intent1);
dialog4.dismiss();
UniappUtil.showUniMp(MainActivity.this, "/pages_app/myWelfare/myWelfare", null);
}
});
@@ -14,6 +14,7 @@ import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
public class MyDownLoadsActivity extends BaseActivity{
@@ -214,14 +215,14 @@ public class MyDownLoadsActivity extends BaseActivity{
} else if (id == R.id.rl_4) {
if (isDownLoad) {
//跳到uniapp 的缓存页面
MyUserIconUtil.showUniMp(MyDownLoadsActivity.this, "/pages_app/zhinanDownload/zhinanDownload", null);
UniappUtil.showUniMp(MyDownLoadsActivity.this, "/pages_app/zhinanDownload/zhinanDownload", null);
} else {
startActivity(new Intent(mActivity, CoollectVideoActivity.class).putExtra("name",mTv_title4.getText().toString()));
}
} else if (id == R.id.rl_5) {
if (isDownLoad) {
//跳到uniapp 的缓存页面
MyUserIconUtil.showUniMp(MyDownLoadsActivity.this, "/pages_app/pptDownload/pptDownload", null);
UniappUtil.showUniMp(MyDownLoadsActivity.this, "/pages_app/pptDownload/pptDownload", null);
} else {
startActivity(new Intent(mActivity, CoollectCourseActivity.class));
}
@@ -24,8 +24,10 @@ import cn.shangyu.gdxzExpert.pulltorefreshview.PullToRefreshBase;
import cn.shangyu.gdxzExpert.pulltorefreshview.PullToRefreshListView;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
public class MyFuliCardActivity extends BaseActivity implements OnCallBackFromNet {
@@ -140,9 +142,11 @@ public class MyFuliCardActivity extends BaseActivity implements OnCallBackFromNe
// startActivity(broadc);
break;
case R.id.r_top:
Intent intent1=new Intent(MyFuliCardActivity.this,MyWelfAreActivity.class);
intent1.putExtra("changeFragment",2);
startActivity(intent1);
// Intent intent1=new Intent(MyFuliCardActivity.this,MyWelfAreActivity.class);
// intent1.putExtra("changeFragment",2);
// startActivity(intent1);
UniappUtil.showUniMp(MyFuliCardActivity.this, "/pages_app/myWelfare/myWelfare", null);
break;
}
@@ -69,6 +69,7 @@ import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.view.viewbadger.BadgeView;
import cn.shangyu.gdxzExpert.widget.ECAlertDialog;
@@ -90,6 +91,7 @@ import static cn.shangyu.gdxzExpert.fragment.PatientListFragment.PatientUrl;
public class MyPatientActivity extends BaseActivity implements
OnCheckedChangeListener, OnUpdateMsgUnreadCountsListener, ReminderManager.UnreadNumChangedCallback {
private static final String EXTRA_OPEN_PATIENT_MSG = "open_patient_msg";
private RadioGroup main_radiogroup;
private FragmentManager fm;
@@ -169,7 +171,7 @@ public class MyPatientActivity extends BaseActivity implements
main_radiogroup.setOnCheckedChangeListener(this);
instance = this;
fm = getSupportFragmentManager();
changeMessage();
handleEntryIntent(getIntent());
isSuccessView = true;
// 患者列表申请提醒
bt_paintlist = (Button) view.findViewById(R.id.bt_paintlist);
@@ -182,6 +184,30 @@ public class MyPatientActivity extends BaseActivity implements
yuninit();
return view;
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
if (isSuccessView) {
handleEntryIntent(intent);
}
}
private void handleEntryIntent(Intent intent) {
// 默认保持原有行为:进入页面即展示患者消息
if (intent != null && intent.getBooleanExtra(EXTRA_OPEN_PATIENT_MSG, false)) {
// 清掉一次性标记,避免后续 getIntent() 重复触发同一路由
intent.removeExtra(EXTRA_OPEN_PATIENT_MSG);
}
if (main_radiogroup != null
&& main_radiogroup.getCheckedRadioButtonId() != R.id.tab_rbn_message) {
main_radiogroup.setOnCheckedChangeListener(null);
main_radiogroup.check(R.id.tab_rbn_message);
main_radiogroup.setOnCheckedChangeListener(this);
}
changeMessage();
}
private LocalBroadcastManager localBroadcastManager;
private IntentFilter intentFilter;
LocalReceiver localReceiver;
@@ -255,9 +281,17 @@ public class MyPatientActivity extends BaseActivity implements
break;
case R.id.tab_rbn_patlist:
changePatlist();
// com.alibaba.fastjson.JSONObject pageParams = new JSONObject();
// pageParams.put("type", "list");
// UniappUtil.showUniMp(MyPatientActivity.this, "/pages_app/patientMsg/patientList", pageParams);
break;
case R.id.tab_rbn_visit:
changevisit();
// com.alibaba.fastjson.JSONObject pageParams_plan = new JSONObject();
// pageParams_plan.put("type", "plan");
// UniappUtil.showUniMp(MyPatientActivity.this, "/pages_app/patientMsg/patientPlan", pageParams_plan);
break;
}
}
@@ -20,7 +20,9 @@ import cn.shangyu.gdxzExpert.base.BaseActivity;
import cn.shangyu.gdxzExpert.fragment.GetWelfAreFragment;
import cn.shangyu.gdxzExpert.fragment.WelfAreFragment;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
/**
@@ -147,7 +149,9 @@ public class MyWelfAreActivity extends BaseActivity {
} else if (id == R.id.ll_buy_point) {
startActivity(new Intent(mcontext,WelfareDetailActivity.class));
} else if (id == R.id.ll_integraltickit) {
startActivity(new Intent(mcontext,AccumulatePointsActivity.class));
// startActivity(new Intent(mcontext,AccumulatePointsActivity.class));
UniappUtil.showUniMp(mcontext, "/pages_app/myPoint/myPoint", null);
}
}
private void initFragment() {
@@ -31,9 +31,11 @@ import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.polyvplayer.QualityCourseActivity;
import cn.shangyu.gdxzExpert.ui.CustomProgressDialog;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.ECAlertDialog;
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
@@ -457,12 +459,13 @@ public class NavigationActivity extends BaseActivity implements OnCallBackFromNe
break;
case R.id.bt_point1:
case R.id.bt_point:
startActivity(new Intent(mActivity, PointsMallActivity.class));
// startActivity(new Intent(mActivity, PointsMallActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_goods/pointMall/pointMall", null);
break;
case R.id.ll_sign1:
case R.id.ll_sign:
startActivity(new Intent(NavigationActivity.this,AccumulatePointsActivity.class));
// startActivity(new Intent(NavigationActivity.this,AccumulatePointsActivity.class));
UniappUtil.showUniMp(NavigationActivity.this, "/pages_app/myPoint/myPoint", null);
// if (Constant.isSignIn) {
// dilaog2 = ECAlertDialog.buildAlert(NavigationActivity.this,
// "今日已签到,每日只能签到一次。\n 请明日继续哦~", "关闭", new DialogInterface.OnClickListener() {// 确定
@@ -16,6 +16,7 @@ import cn.shangyu.gdxzExpert.base.BaseActivity;
import cn.shangyu.gdxzExpert.fragment.MoreToOneConsultFragment;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
/**
@@ -156,7 +157,7 @@ public class PublicConsultationActivity extends BaseActivity implements RadioGro
}
break;
case R.id.rb_question2:
MyUserIconUtil.showUniMp(this, "/pages_app/consult/consult", null);
UniappUtil.showUniMp(this, "/pages_app/consult/consult", null);
break;
}
}
@@ -2,6 +2,8 @@ package cn.shangyu.gdxzExpert.activity;
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
@@ -37,9 +39,11 @@ import cn.shangyu.gdxzExpert.report.CommUtil;
import cn.shangyu.gdxzExpert.report.ReportService;
import cn.shangyu.gdxzExpert.report.reportBean;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
public class PublicSearchActivity extends AppCompatActivity implements OnClickListener {
private GridView gv_search;
@@ -273,11 +277,15 @@ public class PublicSearchActivity extends AppCompatActivity implements OnClickLi
needreport("名科");
break;
case 11:
Intent intentshop = new Intent(PublicSearchActivity.this,
PointsMallActivity.class);
intentshop.putExtra("name", searchStr);
intentshop.setFlags(FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intentshop);
// Intent intentshop = new Intent(PublicSearchActivity.this, PointsMallActivity.class);
// intentshop.putExtra("name", searchStr);
// intentshop.setFlags(FLAG_ACTIVITY_CLEAR_TOP);
// startActivity(intentshop);
com.alibaba.fastjson.JSONObject pageParams = new com.alibaba.fastjson.JSONObject();
pageParams.put("name", searchStr);
UniappUtil.showUniMp(PublicSearchActivity.this, "/pages_goods/pointMall/pointMall", pageParams);
needreport("积分商城");
break;
default:
@@ -409,11 +417,12 @@ public class PublicSearchActivity extends AppCompatActivity implements OnClickLi
startActivity(intentDepart);
break;
case 12:
Intent intentshop = new Intent(PublicSearchActivity.this,
PointsMallActivity.class);
intentshop.putExtra("name", searchStr);
intentshop.setFlags(FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intentshop);
// Intent intentshop = new Intent(PublicSearchActivity.this, PointsMallActivity.class);
// intentshop.putExtra("name", searchStr);
// intentshop.setFlags(FLAG_ACTIVITY_CLEAR_TOP);
// startActivity(intentshop);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
break;
default:
break;
@@ -63,8 +63,8 @@ import cn.shangyu.gdxzExpert.ecdemo.storage.IMessageSqlManager;
import cn.shangyu.gdxzExpert.ecdemo.ui.SDKCoreHelper;
import cn.shangyu.gdxzExpert.ecdemo.ui.SettingItem;
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
import cn.shangyu.gdxzExpert.netease.bagder.Badger;
import cn.shangyu.gdxzExpert.netease.config.LogoutHelper;
import cn.shangyu.gdxzExpert.utils.BadgeCountUtils;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.DataCleanManager;
@@ -763,17 +763,19 @@ public class SettingAndHelpActivity extends BaseActivity implements OnCallBackFr
tv_cache.setText(getCacheSize());
LogUtil.i("cache==" + getCacheSize());
closeProgressDialog();
//清除随访患者未读消息数
int i = IMessageSqlManager.UnreadCount(Constant.typePatient);
//清除公益咨询未读消息数
int i1 = IMessageSqlManager.UnreadCount(Constant.typeConsult);
// 清除本地会话未读(随访患者、公益咨询)
IMessageSqlManager.UnreadCount(Constant.typePatient);
IMessageSqlManager.UnreadCount(Constant.typeConsult);
ConversationSqlManager.setChattingSessionRead(1);
String brand = android.os.Build.BRAND;
if ("Xiaomi".equals(brand)){
//小米不需要原生角标
}else {
BadgeCountUtils.removeBadge(UIUtils.getContext());
// 清除云信 IM 未读
NIMClient.getService(MsgService.class).clearAllUnreadCount();
// 清除桌面角标(IM + unreadFollow)及应用内系统消息角标状态
Badger.clearAllBadges(ct);
SharePrefUtil.saveBoolean(ct, "isHaveSysMsg", false);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
if (notificationManager != null) {
notificationManager.cancel(55);
}
String pathName = getApplicationContext().getExternalFilesDir("").getAbsolutePath()+ "/欢迎页/huanyingye.jpg";
File currentFile = new File(pathName);
@@ -782,7 +784,6 @@ public class SettingAndHelpActivity extends BaseActivity implements OnCallBackFr
}
SharePrefUtil.saveString(getApplicationContext(),
Url.getStartpage+"new", "");
NIMClient.getService(MsgService.class).clearAllUnreadCount();
ToastUtil.showToast("清除完毕");
}
@@ -0,0 +1,706 @@
package cn.shangyu.gdxzExpert.activity;
import static cn.shangyu.gdxzExpert.utils.Constant.uniapp_mp_appid;
import android.app.Activity;
import android.app.AlertDialog.Builder;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.gyf.immersionbar.ImmersionBar;
import com.pingplusplus.android.Pingpp;
import com.tencent.mm.opensdk.modelpay.PayReq;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
import java.util.Map;
import cn.shangyu.gdxzExpert.R;
import cn.shangyu.gdxzExpert.application.BaseApplication;
import cn.shangyu.gdxzExpert.base.BaseActivity;
import cn.shangyu.gdxzExpert.bean.PayWechatBean;
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.DestroyActivityUtil;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.OneClickUtil;
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.ECAlertDialog;
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
import io.dcloud.feature.sdk.Interface.IUniMP;
/**
* uniapp 端调用 支付购买积分
*/
public class UniappPayPointActivity extends BaseActivity implements OnCallBackFromNet,
OnCheckedChangeListener{
private Intent getintent;
private View view;
private Button mBt_pay;
private CheckBox mCb_balance, mCb_zhifubao, mCb_weixin, mCb_yinlian;
private LinearLayout mLl_balance, mLl_zhifubao, mLl_weixin, mLl_yinlian;
private String CHANNEL_ZHIFUBAO = "alipay";
private String CHANNEL_WEIXIN = "wx";
private String CHANNEL_YINLAN = "upacp";
private String payChannel = "0";
private String pay_money;
private String product_id;
private String type;
private String order_id;
private TextView mTv_pay_money, mTv_pay_yue, mTv_monet_enough,pay_name,pay_type;
private String uuid;
private double pay;
private boolean NoMoney = false;
// private boolean isDetail = false;
private boolean paySUCCESS = false;
private String paymoney;
private String jifen;
@Override
public void setTitle() {
// TODO Auto-generated method stub
top_title.setText("购买积分");
// pay_money = getIntent().getStringExtra("money");
// order_id = getIntent().getStringExtra("order_id");
// if (getIntent().getType() != null
// && getIntent().getType().equals("detail")) {
// isDetail = true;
// }
}
@Override
public View onCreateSuccessedView() {
// TODO Auto-generated method stub
// api = WXAPIFactory.createWXAPI(this, Constant.WeId,false);
// Intent intent = getIntent();
// api.handleIntent(intent, this);
ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init();
view = UIUtils.inflate(R.layout.activity_pay);
mBt_pay = (Button) view.findViewById(R.id.bt_pay);
mCb_balance = (CheckBox) view.findViewById(R.id.cb_pay_balance);
mCb_zhifubao = (CheckBox) view.findViewById(R.id.cb_pay_zhifubao);
mCb_weixin = (CheckBox) view.findViewById(R.id.cb_pay_weixin);
mCb_yinlian = (CheckBox) view.findViewById(R.id.cb_pay_yinlian);
mLl_balance = (LinearLayout) view.findViewById(R.id.ll_pay_balance);
mLl_zhifubao = (LinearLayout) view.findViewById(R.id.ll_pay_zhifubao);
mLl_weixin = (LinearLayout) view.findViewById(R.id.ll_pay_weixin);
mLl_yinlian = (LinearLayout) view.findViewById(R.id.ll_pay_yinlian);
mTv_pay_money = (TextView) view.findViewById(R.id.tv_pay_money);
pay_type = (TextView) view.findViewById(R.id.pay_type);
pay_name = (TextView) view.findViewById(R.id.pay_name);
mTv_monet_enough = (TextView) view.findViewById(R.id.tv_money_enough);
mTv_pay_yue = (TextView) view.findViewById(R.id.tv_yue);
uuid = SharePrefUtil.getString(UniappPayPointActivity.this, "uuid", "");
initIntent();
initListener();
getUserResult();
return view;
}
private void initIntent() {
// TODO Auto-generated method stub
pay_money = getIntent().getStringExtra("money");
product_id = getIntent().getStringExtra("product_id");
type = getIntent().getStringExtra("type");
order_id = getIntent().getStringExtra("order_id");
jifen = getIntent().getStringExtra("jifen");
//购买积分
pay = Double.parseDouble(pay_money);
mTv_pay_money.setText(paymoney);
pay_type.setVisibility(View.GONE);
pay_name.setText("您购买了"+jifen+"积分");
}
private void initListener() {
// TODO Auto-generated method stub
mBt_pay.setOnClickListener(this);
mCb_balance.setOnCheckedChangeListener(this);
mCb_zhifubao.setOnCheckedChangeListener(this);
mCb_weixin.setOnCheckedChangeListener(this);
mCb_yinlian.setOnCheckedChangeListener(this);
mLl_balance.setOnClickListener(this);
mLl_weixin.setOnClickListener(this);
mLl_yinlian.setOnClickListener(this);
mLl_zhifubao.setOnClickListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
// AGP 8.0+ R.id 不再是 final 常量,不能用于 switch,改用 if-else
int buttonId = buttonView.getId();
if (buttonId == R.id.cb_pay_balance) {
if (isChecked) {
payChannel = "balance";
mCb_zhifubao.setChecked(false);
mCb_weixin.setChecked(false);
mCb_yinlian.setChecked(false);
if (NoMoney) {
payChannel = "0";
}
}
else
{
payChannel = "0";
if(mCb_weixin.isChecked())
{
payChannel = CHANNEL_WEIXIN;
}
}
if (NoMoney) {
ToastUtil.showMessage("余额不足");
mCb_balance.setChecked(false);
}
} else if (buttonId == R.id.cb_pay_zhifubao) {
if (isChecked) {
payChannel = CHANNEL_ZHIFUBAO;
mCb_balance.setChecked(false);
mCb_weixin.setChecked(false);
mCb_yinlian.setChecked(false);
}
} else if (buttonId == R.id.cb_pay_weixin) {
if (isChecked) {
payChannel = CHANNEL_WEIXIN;
mCb_balance.setChecked(false);
mCb_zhifubao.setChecked(false);
mCb_yinlian.setChecked(false);
}
else
{
payChannel = "0";
if(mCb_balance.isChecked())
{
payChannel = "balance";
}
}
} else if (buttonId == R.id.cb_pay_yinlian) {
if (isChecked) {
payChannel = CHANNEL_YINLAN;
mCb_balance.setChecked(false);
mCb_zhifubao.setChecked(false);
mCb_weixin.setChecked(false);
}
}
}
@Override
public ResultState onLoad() {
// TODO Auto-generated method stub
return ResultState.STATE_SUCCESSED;
}
@Override
protected void processClick(View v) {
// TODO Auto-generated method stub
// AGP 8.0+ R.id 不再是 final 常量,不能用于 switch,改用 if-else
int id = v.getId();
if (id == R.id.bt_pay) {
// if(payChannel!=null)
// {
// PayReq request = new PayReq();
// request.appId = Constant.WeId;
// request.partnerId = Constant.PayId;
// request.prepayId= "1101000000140415649af9fc314aa427";
// request.packageValue = "Sign=WXPay";
// request.nonceStr= "1101000000140429eb40476f8896f4c9";
// request.timeStamp= "1398746574";
// request.sign="oR9d8PuhnIc+YZ8cBHFCwfgpaK9gd7vaRvkYD7rthRAZ+QBhcCYL21N7cHCTUxbQ+EAt6Uy+lwSN22f5YZvI45MLko8Pfso0jm46v5hqcVwrk6uddkGuT+Cdvu4WBqDzaDjnNa5UK3GfE1Wfl2gHxIIY5lLdUgWFts17D4WuolLLkiFZV+JSHMvH7eaLdT9N5GBovBwu5yYKUR7skR8Fu+LozcSqQixnlEZUfyE55feLOQTUYzLmR9pNtPbPsu6WVhbNHMS3Ss2+AehHvz+n64GDmXxbX++IOBvm2olHu3PsO";
// api.sendReq(request);
// return;
// }
if (!payChannel.equals("0")) {
// 按钮进入“支付中...”状态,并禁止再次点击
if (mBt_pay != null) {
mBt_pay.setEnabled(false);
mBt_pay.setText("支付中...");
}
if(OneClickUtil.isFastDoubleClick(R.id.bt_pay,1500))
{
return;
}
if (payChannel.equals("balance")) {
if (NoMoney) {
ToastUtil.showMessage("请选择付款方式");
mCb_balance.setChecked(false);
}else {
sendMessageDialog();
}
} else{
getPayChargeResult("");
}
} else {
ToastUtil.showMessage("请选择付款方式");
}
} else if (id == R.id.ll_pay_balance) {
payChannel = "balance";
mCb_balance.setChecked(true);
mCb_zhifubao.setChecked(false);
mCb_weixin.setChecked(false);
mCb_yinlian.setChecked(false);
if (NoMoney) {
ToastUtil.showMessage("余额不足");
mCb_balance.setChecked(false);
}
} else if (id == R.id.ll_pay_zhifubao) {
payChannel = CHANNEL_ZHIFUBAO;
mCb_balance.setChecked(false);
mCb_zhifubao.setChecked(true);
mCb_weixin.setChecked(false);
mCb_yinlian.setChecked(false);
} else if (id == R.id.ll_pay_weixin) {
payChannel = CHANNEL_WEIXIN;
mCb_balance.setChecked(false);
mCb_zhifubao.setChecked(false);
mCb_weixin.setChecked(true);
mCb_yinlian.setChecked(false);
} else if (id == R.id.ll_pay_yinlian) {
payChannel = CHANNEL_YINLAN;
mCb_balance.setChecked(false);
mCb_zhifubao.setChecked(false);
mCb_weixin.setChecked(false);
mCb_yinlian.setChecked(true);
}
}
public static final int GET_CREATE_ORDER_RESULT = 101;
public static final int GET_USER_DATA_RESULT = 201;
public static final int GET_PAYR_SUCCESS_RESULT = 301;
public static final int PAYPOINTORDER = 401;
// public void getPayResult() {
// String uuid = SharePrefUtil.getString(ct, Constant.USERID, "");
// Map<String, String> param = new HashMap<String, String>();
// param.put("uid", uuid);
// param.put("amount", 1 + "");
// param.put("subject", "dasdkljh");
// param.put("body", "asdasd");
// sendParamtoNet(Url.getCreateOrder, param, GET_CREATE_ORDER_RESULT,
// mActivity, true);
// }
public void getPayChargeResult(String password) {
Map<String, String> param = new HashMap<String, String>();
// param.put("amount", pay_money);
// param.put("order_id", order_id);
// param.put("expert_uuid", uuid);
param.put("trade_no", order_id);
param.put("channel", payChannel);
if (CHANNEL_YINLAN.equals(payChannel)){
ToastUtil.showMessage("暂不支持");
}else {
if (StringUtil.isEmpty(jifen)){//不是购买积分
if (payChannel.equals("balance")) {
param.put("pwd", password);
}
sendJsonPostParamtoNetSignMD5(Url.getPayXinYiOrder, param, GET_CREATE_ORDER_RESULT, this);
}else {//购买积分
if (payChannel.equals("balance")) {
param.put("pwd", password);
}else {
param.put("pwd", "");
}
sendJsonPostParamtoNetSignMD5(Url.payPointOrder, param, GET_CREATE_ORDER_RESULT, this);
}
}
}
public void getUserResult() {
Map<String, String> param = new HashMap<String, String>();
// param.put("user_uuid", uuid);
sendJsonPostParamtoNetSignMD5(Url.getRetrieveUser, param, GET_USER_DATA_RESULT,
this);
}
// 完成订单
public void getPaySucceedResult() {
Map<String, String> param = new HashMap<String, String>();
param.put("order_id", order_id);
if (StringUtil.isEmpty(jifen)){
sendParamtoNet(Url.getpayXinyiOrderSucceed, param,
GET_PAYR_SUCCESS_RESULT, this, true);
}else {
sendParamtoNet(Url.payPointOrderSucceed, param,
GET_PAYR_SUCCESS_RESULT, this, true);
}
}
@Override
public void onCallbackFromThread(String resultJson) {
// TODO Auto-generated method stub
}
@Override
public void onCallBackFromThread(String resultJson, int resultCode) {
Log.d("WXEntryActivity",resultCode+" "+resultJson);
// TODO Auto-generated method stub
switch (resultCode) {
case 102:
try {
JSONObject jsonObject=new JSONObject(resultJson);
if("200".equals(jsonObject.getString("code")))
{
if("SUCCESS".equals(jsonObject.getJSONObject("data").getString("tradeState")))
{
paySUCCESS = true;
Log.d("aaa","1 paySUCCESS "+paySUCCESS);
aaa();
}
}
} catch (JSONException e) {
e.printStackTrace();
}
break;
case GET_USER_DATA_RESULT:
// RetrieveUser bean = GsonTools.fromGsonToBean(resultJson,
// RetrieveUser.class);
double yue = 0.0;
try {
JSONObject jsonObject = new JSONObject(resultJson);
if (!"200".equals(jsonObject.getString("code"))) {
ToastUtil.showMessage(jsonObject.getString("msg"));
return;
}
yue = jsonObject.getDouble("data");
} catch (JSONException e) {
e.printStackTrace();
}
mTv_pay_yue.setText("余额支付¥" + String.format("%.2f", yue / 100));
if (pay > yue) {
NoMoney = true;
mTv_monet_enough.setVisibility(View.VISIBLE);
} else {
mTv_monet_enough.setVisibility(View.INVISIBLE);
}
break;
case GET_CREATE_ORDER_RESULT:
if(payChannel.equals("balance"))
{
try {
JSONObject jsonObject=new JSONObject(resultJson);
if("200".equals(jsonObject.getString("code")))
{
paySUCCESS = true;
Log.d("aaa","2 paySUCCESS "+paySUCCESS);
aaa();
}
else
{
ToastUtil.showToast(jsonObject.getString("msg"));
}
} catch (JSONException e) {
e.printStackTrace();
}
return;
}
PayWechatBean payBean= GsonTools.fromGsonToBean(resultJson,
PayWechatBean.class);
if(payBean!=null&&"200".equals(payBean.getCode()))
{
PayReq request = new PayReq();
request.appId = payBean.getData().getAppid();
request.partnerId = payBean.getData().getPartnerid();
request.prepayId= payBean.getData().getPrepayid();
request.packageValue = payBean.getData().getPackage_str();
request.nonceStr= payBean.getData().getNoncestr();
request.timeStamp= payBean.getData().getTimestamp();
request.sign=payBean.getData().getSign();
api.sendReq(request);
// Log.d("WXEntryActivity","pay "+pay);
}
else
{
ToastUtil.showToast(payBean.getMessage());
}
// LogUtil.i("resultJson = "+resultJson);
// if (payChannel.equals("")) {
// if ("\"SUCCEED\"".equals(resultJson)) {
// getPaySucceedResult();
// } else if("\"密码错误\"".equals(resultJson)) {
// ToastUtil.showMessage("密码错误");
// }else{
// ToastUtil.showMessage("支付失败");
// }
//
// } else {
// String result = StringEscapeUtils.unescapeJava(resultJson);
// if (!StringUtil.isEmpty(result)) {
// String sssss = result.substring(1, result.length() - 1);
// Pingpp.createPayment(PayActivity.this, sssss);
// } else {
// ToastUtil.showMessage("服务器异常");
// }
//
// }
break;
case GET_PAYR_SUCCESS_RESULT:
if ("\"SUCCEED\"".equals(resultJson)) {
ToastUtil.showMessage("支付成功");
paySUCCESS = true;
Log.d("aaa","3 paySUCCESS "+paySUCCESS);
aaa();
}
break;
default:
break;
}
}
private ECAlertDialog buildAlert;
public void aaa() {
buildAlert = ECAlertDialog.buildAlert(UniappPayPointActivity.this, "购买"+jifen+"积分成功,谢谢您对肝胆相照平台的支持",
null, "确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
buildAlert.dismiss();
}
}, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
LogUtil.i("paySucess", "222" + type);
IUniMP uniapp_MP_cash = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
if(uniapp_MP_cash != null && uniapp_MP_cash.isRunning()){
com.alibaba.fastjson.JSONObject pageParams = new com.alibaba.fastjson.JSONObject();
String targetPath = "";
if(type.equals("video")){
pageParams.put("id",product_id);
targetPath = "/pages_app/videoDetail/videoDetail";
UniappUtil.showUniMp(UniappPayPointActivity.this, targetPath, pageParams);
}else if(type.equals("goods")){
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("order_id", order_id);
jsonObject.put("type", "BuyPoint");
} catch (JSONException e) {
throw new RuntimeException(e);
}
uniapp_MP_cash.sendUniMPEvent("paySuccess", jsonObject);
uniapp_MP_cash.showUniMP();
}else{
targetPath = "/pages_app/myPoint/myPoint";
UniappUtil.showUniMp(UniappPayPointActivity.this, targetPath, pageParams);
}
}
UniappPayPointActivity.this.finish();
buildAlert.dismiss();
}
});
buildAlert.setTitle("提示");
buildAlert.setTitleColor(UniappPayPointActivity.this.getResources().getColor(R.color.top_title));
buildAlert.setCanceledOnTouchOutside(false);
buildAlert.show();
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == Pingpp.REQUEST_CODE_PAYMENT) {
if (resultCode == Activity.RESULT_OK) {
String result = data.getExtras().getString("pay_result");
if (result.equals("success")) {
getPaySucceedResult();
}
// 处理返回值
// "success" - 支付成功
// "fail" - 支付失败
// "cancel" - 取消支付
// "invalid" - 支付插件未安装(一般是微信客户端未安装的情况)
String errorMsg = data.getExtras().getString("error_msg"); // 错误信息
String extraMsg = data.getExtras().getString("extra_msg"); // 错误信息
// showMsg(result, errorMsg, extraMsg);
if (result.equals("cancel")) {
ToastUtil.showMessage("已取消支付");
}
if (result.equals("fail")) {
ToastUtil.showMessage("支付失败,请重新支付");
}
if (result.equals("invalid")) {
ToastUtil.showMessage("请安装微信客户端");
}
}
}
}
public void showMsg(String title, String msg1, String msg2) {
String str = title;
if (null != msg1 && msg1.length() != 0) {
str += "\n" + msg1;
}
if (null != msg2 && msg2.length() != 0) {
str += "\n" + msg2;
}
Builder builder = new Builder(this);
builder.setMessage(str);
builder.setTitle("提示");
builder.setPositiveButton("OK", null);
builder.create().show();
}
private Dialog dialog;
EditText mEt_getpassword;
protected void sendMessageDialog() {
// TODO Auto-generated method stub
LayoutInflater inflater = LayoutInflater.from(this);
RelativeLayout layout = (RelativeLayout) inflater.inflate(
R.layout.dialog_get_password, null);
// 2. 新建对话框对象
dialog = new Builder(this,
R.style.Theme_Light_FullScreenDialogAct).create();
dialog.setCancelable(false);
dialog.show();
Window window =dialog.getWindow();
// window.setGravity(Gravity.CENTER);
WindowManager.LayoutParams layoutParams = window.getAttributes();
layoutParams.width = WindowManager.LayoutParams.MATCH_PARENT;
layoutParams.height = WindowManager.LayoutParams.WRAP_CONTENT;
window.setAttributes(layoutParams);
dialog.getWindow().setContentView(layout);
// 只用下面这一行弹出对话框时需要点击输入框才能弹出软键盘
dialog.getWindow().clearFlags(
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
Button btn_cancel = (Button) layout.findViewById(R.id.dilaog_cancel);
Button btn_sure = (Button) layout.findViewById(R.id.dilaog_sure);
mEt_getpassword = (EditText) layout.findViewById(R.id.et_get_password);
btn_cancel.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
hideSoftKeyboard(v);
dialog.dismiss();
}
});
btn_sure.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String password = mEt_getpassword.getText().toString().trim();
if (!StringUtil.isEmpty(password)) {
getPayChargeResult(password);
hideSoftKeyboard(v);
dialog.dismiss();
} else {
ToastUtil.showMessage("请输入您的登陆密码");
}
}
});
}
@Override
protected void onResume() {
super.onResume();
if (paySUCCESS) {
Log.d("aaa","4 paySUCCESS "+paySUCCESS);
aaa();
} else {
getOrderStatus();
}
// if (!paySUCCESS) {
// getOrderStatus();
// }
}
private void getOrderStatus()
{ if(order_id==null)
{
order_id=getIntent().getStringExtra("order_id");
}
Map<String, String> param = new HashMap<>();
// param.put("trade_no","99361202930720");
param.put("trade_no",order_id);
Log.d("WXEntryActivity","orderId "+order_id);
sendJsonPostParamtoNetSignMD5(Url.getOrderStatus,param,102,this);
}
@Override
public void finish() {
// TODO Auto-generated method stub
if (paySUCCESS) {
Intent intent = new Intent();
setResult(201, intent);
}
super.finish();
}
@Override
protected void onDestroy() {
paySUCCESS=false;
super.onDestroy();
}
public void hideSoftKeyboard(View localView) {
InputMethodManager inputMethodManager = (InputMethodManager) ct
.getSystemService(Context.INPUT_METHOD_SERVICE);
if (inputMethodManager != null) {
// View localView = ((Activity) ct).getCurrentFocus();
if (localView != null && localView.getWindowToken() != null) {
IBinder windowToken = localView.getWindowToken();
inputMethodManager.hideSoftInputFromWindow(windowToken, 0);
}
}
}
}
@@ -5,14 +5,18 @@ import static cn.shangyu.gdxzExpert.utils.Constant.uniapp_mp_appid;
import android.app.Activity;
import android.app.Application;
import android.app.Application.ActivityLifecycleCallbacks;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Process;
import android.os.StrictMode;
import android.text.TextUtils;
import android.util.Log;
import android.webkit.WebView;
import androidx.multidex.MultiDex;
@@ -51,18 +55,25 @@ import org.json.JSONObject;
import java.io.File;
import java.io.InvalidClassException;
import java.io.Serializable;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import cn.shangyu.gdxzExpert.activity.PayActivity;
import cn.shangyu.gdxzExpert.activity.PayCourseActivity;
import cn.shangyu.gdxzExpert.activity.PublicConsultationActivity;
import cn.shangyu.gdxzExpert.activity.UniappPayCourseActivity;
import cn.shangyu.gdxzExpert.activity.UniappPayPointActivity;
import cn.shangyu.gdxzExpert.polyvplayer.CourseDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import io.dcloud.feature.sdk.Interface.IUniMP;
import io.dcloud.feature.sdk.DCSDKInitConfig;
import io.dcloud.feature.sdk.DCUniMPSDK;
@@ -94,6 +105,9 @@ import cn.shangyu.gdxzExpert.netease.mixpush.DemoMixPushMessageHandler;
import cn.shangyu.gdxzExpert.netease.mixpush.DemoPushContentProvider;
import cn.shangyu.gdxzExpert.netease.session.SessionHelper;
import cn.shangyu.gdxzExpert.polyvplayer.util.PolyvStorageUtils;
import cn.shangyu.gdxzExpert.report.CommUtil;
import cn.shangyu.gdxzExpert.report.ReportService;
import cn.shangyu.gdxzExpert.report.reportBean;
import cn.shangyu.gdxzExpert.umeng.PushHelper;
import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.LogUtil;
@@ -295,6 +309,43 @@ public class BaseApplication extends Application {
// CrashHandler.getInstance().init(getApplicationContext());
// }
// 注册Activity生命周期回调,用于跟踪当前resumed的Activity
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
}
@Override
public void onActivityStarted(Activity activity) {
}
@Override
public void onActivityResumed(Activity activity) {
// 当Activity resumed时,更新当前Activity
AppManager.setCurrentResumedActivity(activity);
}
@Override
public void onActivityPaused(Activity activity) {
// 当Activity paused时,如果这是当前resumed的Activity,则清空
// 这样下一个Activity的onResumed会更新为新的Activity
AppManager.clearCurrentResumedActivity(activity);
}
@Override
public void onActivityStopped(Activity activity) {
}
@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
}
@Override
public void onActivityDestroyed(Activity activity) {
// 当Activity销毁时,如果这是当前resumed的Activity,则清空
AppManager.clearCurrentResumedActivity(activity);
}
});
boolean isFirstRun=this.getSharedPreferences("share",MODE_PRIVATE).getBoolean("isFirstRun", true);
if(!isFirstRun)//隐私权限
@@ -325,11 +376,18 @@ public class BaseApplication extends Application {
DCUniMPSDK.getInstance().setOnUniMPEventCallBack(new IOnUniMPEventCallBack() {
@Override
public void onUniMPEventReceive(String appid, String event, Object data, DCUniMPJSCallback callback) {
LogUtil.i("onUniMPEventReceive appid="+appid);
LogUtil.i("onUniMPEventReceive event="+event);
LogUtil.i("onUniMPEventReceive data="+data);
Log.d("onUniMPEventReceive","appid="+appid);
Log.d("onUniMPEventReceive","event="+event);
Log.d("onUniMPEventReceive","data="+data);
if(appid == null){
return;
}
try {
// 将参数声明为final,以便在内部类中使用
final String finalEvent = event;
final DCUniMPJSCallback finalCallback = callback;
// 解析 data
String msgValue = null;
@@ -343,79 +401,48 @@ public class BaseApplication extends Application {
JSONObject jsonObject = new JSONObject(data.toString());
msgValue = jsonObject.getString("msg");
}
final String finalMsgValue = msgValue;
// payPonitPage 特殊处理:不再依赖 currentActivity,直接在 handleUniMPEvent 中用 Application 启动页面
if ("payPonitPage".equals(finalEvent)) {
handleUniMPEvent(null, finalEvent, finalMsgValue, finalCallback);
return;
}
Activity currentActivity = null;
try {
AppManager appManager = AppManager.getAppManager();
if (appManager != null) {
// 打印当前 activityStack 和 currentResumedActivity,方便排查 currentActivity 为空的问题
AppManager.logActivityStackInternal("BaseApplication.onUniMPEventReceive");
currentActivity = appManager.currentActivity();
LogUtil.i("unimp", "BaseApplication 获取 currentActivity = "
+ (currentActivity == null ? "null" : currentActivity.getClass().getSimpleName()));
}
} catch (Exception e) {
LogUtil.e("获取当前Activity失败: " + e.getMessage());
}
// 如果获取不到Activity,直接返回失败结果(不再重试)
if (currentActivity == null) {
LogUtil.e("当前Activity为空,无法处理uniapp事件");
LogUtil.w("当前Activity为空,无法处理uniapp事件: " + finalEvent);
if (finalCallback != null) {
try {
JSONObject result = new JSONObject();
result.put("code", 0);
result.put("msg", "no_activity");
result.put("event", finalEvent);
finalCallback.invoke(result);
} catch (Exception e) {
LogUtil.e("回调 uniapp 活动获取失败结果时出错: " + e.getMessage());
e.printStackTrace();
}
}
return;
}
if(event.equals("goTabbarPage")){
// MainActivity 特有的逻辑,需要检查当前 Activity 是否是 MainActivity
if (currentActivity instanceof cn.shangyu.gdxzExpert.activity.MainActivity) {
cn.shangyu.gdxzExpert.activity.MainActivity mainActivity = (cn.shangyu.gdxzExpert.activity.MainActivity) currentActivity;
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleMainActivityEvent(mainActivity, event, msgValue);
}
}
} else if (event.equals("getScanCodeAuth")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleScanCodeAuth(callback);
}
} else if(event.equals("checkToken")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleCheckToken(callback);
}
} else if(event.equals("getNewToken")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleCheckToken(callback);
}
} else if(event.equals("goHomeSearch")){
if (currentActivity != null) {
Intent intentv = new Intent(currentActivity, cn.shangyu.gdxzExpert.activity.PublicSearchActivity.class);
if (msgValue.equals("patientVideo")) {
intentv.setType("patientVideo");
}else if (msgValue.equals("meetVideo")) {
intentv.setType("video");
}else if (msgValue.equals("zhinan")) {
intentv.setType("drug");
}else if (msgValue.equals("ppt")) {
intentv.setType("course");
}
currentActivity.startActivity(intentv);
}
} else if(event.equals("buyPointPage")) {
if (currentActivity != null) {
Intent intentv = new Intent(currentActivity, cn.shangyu.gdxzExpert.pointsmall.BuyIntegerActivty.class);
currentActivity.startActivity(intentv);
}
} else if(event.equals("payPptPage")) {
if (currentActivity != null) {
LogUtil.i("payPptPage", msgValue);
JSONObject jsonObject = new JSONObject(msgValue);
// 获取值
Integer price = jsonObject.getInt("price");
String providername = jsonObject.getString("providername");
// String order_id = jsonObject.getString("order_id");
String trade_no = jsonObject.getString("trade_no");
Intent intent = new Intent(currentActivity, UniappPayCourseActivity.class);
intent.putExtra("providername", providername);
intent.putExtra("money", price + "");
intent.putExtra("order_id", trade_no);
currentActivity.startActivity(intent);
}
}
// 处理事件
handleUniMPEvent(currentActivity, finalEvent, finalMsgValue, finalCallback);
}catch (Exception e){
LogUtil.e("处理uniapp事件时出错: " + e.getMessage());
e.printStackTrace();
@@ -423,6 +450,239 @@ public class BaseApplication extends Application {
}
});
}
/**
* 安全地从JSONObject获取整数值(支持字符串和数字类型)
*/
private Integer getIntSafely(JSONObject jsonObject, String key) {
try {
if (jsonObject.has(key)) {
Object value = jsonObject.get(key);
if (value instanceof Integer) {
return (Integer) value;
} else if (value instanceof String) {
return Integer.parseInt((String) value);
} else if (value instanceof Number) {
return ((Number) value).intValue();
}
}
} catch (Exception e) {
LogUtil.e("解析JSON字段 " + key + " 失败: " + e.getMessage());
}
return 0; // 默认返回0
}
/**
* 处理uniapp事件的实际逻辑
*/
private void handleUniMPEvent(Activity currentActivity, String event, String msgValue, DCUniMPJSCallback callback) {
try {
if(event.equals("goTabbarPage")){
// MainActivity 特有的逻辑,需要检查当前 Activity 是否是 MainActivity
if (currentActivity instanceof cn.shangyu.gdxzExpert.activity.MainActivity) {
cn.shangyu.gdxzExpert.activity.MainActivity mainActivity = (cn.shangyu.gdxzExpert.activity.MainActivity) currentActivity;
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleMainActivityEvent(mainActivity, event, msgValue);
}
}
} else if (event.equals("getScanCodeAuth")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleScanCodeAuth(callback);
}
} else if(event.equals("checkToken")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleCheckToken(callback);
}
} else if(event.equals("getNewToken")){
if (currentActivity instanceof BaseActivity) {
((BaseActivity) currentActivity).handleCheckToken(callback);
}
} else if(event.equals("goHomeSearch")){
if (currentActivity != null) {
Intent intentv = new Intent(currentActivity, cn.shangyu.gdxzExpert.activity.PublicSearchActivity.class);
if (msgValue.equals("patientVideo")) {
intentv.setType("patientVideo");
}else if (msgValue.equals("meetVideo")) {
intentv.setType("video");
}else if (msgValue.equals("zhinan")) {
intentv.setType("drug");
}else if (msgValue.equals("ppt")) {
intentv.setType("course");
}else if (msgValue.equals("pointMall")) {
intentv.setType("shopping");
}else if (msgValue.equals("patientClass")) {
intentv.setType("science");
}else if (msgValue.equals("news")) {
intentv.setType("news");
}
currentActivity.startActivity(intentv);
}
} else if(event.equals("buyPointPage")) {
// 我的积分页:不再依赖 currentActivity,直接使用 Application 作为 Context 启动页面
Intent intentv = new Intent(BaseApplication.this, cn.shangyu.gdxzExpert.pointsmall.BuyIntegerActivty.class);
intentv.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intentv);
} else if(event.equals("payPptPage")) {
if (currentActivity != null) {
LogUtil.i("payPptPage", msgValue);
JSONObject jsonObject = new JSONObject(msgValue);
// 获取值,安全地处理可能是字符串或数字的字段
Integer price = getIntSafely(jsonObject, "price");
String providername = jsonObject.optString("providername", "");
String trade_no = jsonObject.optString("trade_no", "");
Intent intent = new Intent(currentActivity, UniappPayCourseActivity.class);
intent.putExtra("providername", providername);
intent.putExtra("money", price + "");
intent.putExtra("order_id", trade_no);
currentActivity.startActivity(intent);
}
}else if(event.equals("payPonitPage")) {
// 支付积分页:不再依赖 currentActivity,直接使用 Application 作为 Context 启动页面
LogUtil.i("payPointPage", msgValue);
JSONObject jsonObject = new JSONObject(msgValue);
// 获取值,安全地处理可能是字符串或数字的字段
Integer price = getIntSafely(jsonObject, "price");
Integer jifen = getIntSafely(jsonObject, "jifen");
Integer product_id = getIntSafely(jsonObject, "product_id");
String trade_no = jsonObject.optString("trade_no", "");
String type = jsonObject.optString("type", "");
Intent intent = new Intent(BaseApplication.this, UniappPayPointActivity.class);
intent.putExtra("money", price + "");
intent.putExtra("order_id", trade_no);
intent.putExtra("jifen", jifen + "");
intent.putExtra("type", type + "");
intent.putExtra("product_id", product_id + "");
intent.setType("detail");
// Application 上下文启动 Activity 必须加 NEW_TASK
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}else if(event.equals("goPatientMsg")) {
Intent intent = null;
if (currentActivity != null) {
intent = new Intent(currentActivity, cn.shangyu.gdxzExpert.activity.MyPatientActivity.class);
// 尽量复用栈中的 MyPatientActivity,并把新 Intent 分发到 onNewIntent
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
intent.putExtra("open_patient_msg", true);
currentActivity.startActivity(intent);
} else {
intent = new Intent(BaseApplication.this, cn.shangyu.gdxzExpert.activity.MyPatientActivity.class);
intent.putExtra("open_patient_msg", true);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
}else if(event.equals("goSendMsg")) {
if (currentActivity != null) {
String patientUuid = msgValue;
try {
// 兼容 msg 为纯字符串或 JSON 字符串两种格式
JSONObject jsonObject = new JSONObject(msgValue);
patientUuid = jsonObject.optString("patientuuid", jsonObject.optString("uuid", msgValue));
} catch (Exception ignore) {
}
if (!TextUtils.isEmpty(patientUuid)) {
SessionHelper.startP2PSession(currentActivity, patientUuid.toLowerCase(), Constant.general, "");
} else {
LogUtil.w("goSendMsg 缺少 patientUuid, msgValue=" + msgValue);
}
}
}else if(event.equals("goCourseDetail")) {
String courseId = msgValue;
try {
JSONObject jsonObject = new JSONObject(msgValue);
courseId = jsonObject.optString("id",
jsonObject.optString("excellentcourse_id", msgValue));
} catch (Exception ignore) {
}
if (TextUtils.isEmpty(courseId)) {
LogUtil.w("goCourseDetail 缺少课程id, msgValue=" + msgValue);
return;
}
Intent intent = null;
if (currentActivity != null) {
intent = new Intent(currentActivity, CourseDetailPolyvPlayerActivity.class);
intent.putExtra("excellentcourse_id", courseId);
intent.putExtra("pinglun", "yes");
intent.putExtra("from_unimp_go_course_detail", true);
currentActivity.startActivity(intent);
} else {
intent = new Intent(BaseApplication.this, CourseDetailPolyvPlayerActivity.class);
intent.putExtra("excellentcourse_id", courseId);
intent.putExtra("pinglun", "yes");
intent.putExtra("from_unimp_go_course_detail", true);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
}else if(event.equals("goGroupMessagePage")) {
Intent intent = null;
if (currentActivity != null) {
intent = new Intent(currentActivity, cn.shangyu.gdxzExpert.activity.SendGroupMsgListActivity.class);
currentActivity.startActivity(intent);
} else {
intent = new Intent(BaseApplication.this, cn.shangyu.gdxzExpert.activity.SendGroupMsgListActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
}else if(event.equals("portraitReport")){
String event_nickname = "";
String page_type = "";
try {
JSONObject jsonObject = new JSONObject(msgValue);
event_nickname = jsonObject.optString("event_nickname");
page_type = jsonObject.optString("page_type");
String resource_name = jsonObject.optString("resource_name");
String resource_option = jsonObject.optString("resource_option");
String belong = jsonObject.optString("belong");
String number = jsonObject.optString("number");
// String tags = jsonObject.optString("tags");
String event_val = jsonObject.optString("event_val");
String event_unit = jsonObject.optString("event_unit");
if(event_nickname.equals("list_page")){
// 执行列表页上报
needreportPage(page_type);
} else if (event_nickname.equals("magazine_donwload")) {
needreportDown(resource_name,resource_option,belong,number,page_type);
} else if (event_nickname.equals("detail_page")) {
needreportDetail(page_type,resource_option,resource_name);
} else if (event_nickname.equals("viorder_deo_download")) {
needreportPay(event_nickname,event_val,event_unit,number,resource_name,resource_option,belong,page_type);
} else if (event_nickname.equals("collect")) {
needreportSome(event_nickname,resource_name,resource_option,page_type);
} else if (event_nickname.equals("share")) {
needreportSome(event_nickname,resource_name,resource_option,page_type);
} else if (event_nickname.equals("like")) {
needreportSome(event_nickname,resource_name,resource_option,page_type);
} else if (event_nickname.equals("comment")) {
needreportSome(event_nickname,resource_name,resource_option,page_type);
} else if (event_nickname.equals("order_gdfile_download")) {
needreportPays(event_nickname,event_val,event_unit,number,resource_name,resource_option,page_type);
} else if (event_nickname.equals("magazine_donwload")) {
needreportPays(event_nickname,event_val,event_unit,number,resource_name,resource_option,page_type);
} else if (event_nickname.equals("boint_jifengood")) {
needreportPay(event_nickname,event_val,event_unit,number,resource_name,resource_option,belong,page_type);
} else if (event_nickname.equals("read_message")) {
needreportSimple(event_nickname);
} else if (event_nickname.equals("clear_message")) {
needreportSimple(event_nickname);
} else if (event_nickname.equals("signin")) {
needreportSimple(event_nickname);
} else if(event_nickname.equals("watch_video")){
needreportPay(event_nickname,event_val,event_unit,number,resource_name,resource_option,belong,page_type);
} else {
needreportSimple(event_nickname);
}
} catch (Exception e) {
LogUtil.e("上报事件时出错: " + e.getMessage());
}
}
}catch (Exception e){
LogUtil.e("处理uniapp事件时出错: " + e.getMessage());
e.printStackTrace();
}
}
public void initYinsi()
{
OkHttpClient okHttpClient = new OkHttpClient.Builder()
@@ -887,4 +1147,158 @@ public class BaseApplication extends Application {
return options;
}
public void needreportDown(String page,String tags,String bl,String nm,String pagetype)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname("magazine_donwload");
rbens.setBelong(bl);
rbens.setNumber(nm);
rbens.setResource_name(page);
rbens.setResource_option(tags+"");
rbens.setPage_type(pagetype);
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportDetail(String page,String tags,String name)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname("detail_page");
rbens.setPage_type(page);
rbens.setResource_name(name);
rbens.setPage_type(page);
rbens.setResource_option(tags+"");
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportSome(String name,String page,String tags,String typepage)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname(name);
rbens.setResource_name(page);
rbens.setPage_type(typepage);
rbens.setResource_option(tags+"");
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportSimple(String name)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname(name);
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportPage(String page) {
List<reportBean> reportBeans = new ArrayList<>();
reportBean rbens = new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(this));
rbens.setEvent_nickname("list_page");
rbens.setPage_type(page);
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportPays(String name, String ev,String ui,String num,String rs,String op,String page)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname(name);
rbens.setEvent_val(ev);
rbens.setEvent_unit(ui);
rbens.setNumber(num);
rbens.setResource_name(rs);
rbens.setPage_type(page);
rbens.setResource_option(op);
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void needreportPay(String name, String ev,String ui,String num,String rs,String op,String bl,String pt)
{
List<reportBean> reportBeans=new ArrayList<>();
reportBean rbens=new reportBean();
rbens.setUser_id(Constant.Report_userId);
rbens.setApp_key(Constant.Repotr_app_key);
rbens.setOs(CommUtil.Repotr_os);
rbens.setDevice(CommUtil.getDeviceName());
rbens.setDevice_type(CommUtil.getDeviceType());
rbens.setApp_version(CommUtil.getVersionName());
rbens.setNetwork_carrier(CommUtil.getCarrierName);
rbens.setNetwork_type(CommUtil.getCurrentNetworkType(UIUtils.getContext()));
rbens.setEvent_nickname(name);
rbens.setEvent_val(ev);
rbens.setEvent_unit(ui);
rbens.setNumber(num);
rbens.setResource_name(rs);
rbens.setResource_option(op);
rbens.setBelong(bl);
rbens.setPage_type(pt);
rbens.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
reportBeans.add(rbens);
startReport(reportBeans);
}
public void startReport(List<reportBean> list) {
Intent intent = new Intent(BaseApplication.this, ReportService.class);
if (list != null) {
intent.putExtra("report_list", (Serializable) list);
}
intent.putExtra("report_token", Constant.Repotr_token);
startService(intent);
}
}
@@ -1,154 +1,275 @@
package cn.shangyu.gdxzExpert.base;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import java.util.Stack;
public class AppManager {
private static Stack<Activity> activityStack;
private static AppManager instance;
private static Stack<Activity> activityStack1;
private static Stack<Activity> activityStack2;
private AppManager(){}
/**
* 单一实例
*/
public static AppManager getAppManager(){
if(instance==null){
instance=new AppManager();
}
return instance;
}
/**
* 添加Activity到堆
*/
public void addActivity(Activity activity){
if(activityStack==null){
activityStack=new Stack<Activity>();
}
activityStack.add(activity);
}
/**
* 添加积分Activity到堆
*/
public void addActivity1(Activity activity){
if(activityStack1==null){
activityStack1=new Stack<Activity>();
}
activityStack1.add(activity);
}
/**
* 添加一问多答Activity到堆
*/
public void addActivity2(Activity activity){
if(activityStack2==null){
activityStack2=new Stack<Activity>();
}
activityStack2.add(activity);
}
/**
* 结束所有积分Activity
*/
public void finishAllActivity1(){
if (activityStack1!=null) {
for (int i = 0, size = activityStack1.size(); i < size; i++){
if (null != activityStack1.get(i)){
activityStack1.get(i).finish();
}
}
activityStack1.clear();
}
// android.os.Process.killProcess(android.os.Process.myPid());
}
/**
* 结束所有一问多答Activity
*/
public void finishAllActivity2(){
if (activityStack2!=null) {
for (int i = 0, size = activityStack2.size(); i < size; i++){
if (null != activityStack2.get(i)){
activityStack2.get(i).finish();
}
}
activityStack2.clear();
}
}
/**
* 获取当前Activity(堆栈中最后压入的)
*/
public Activity currentActivity(){
Activity activity=activityStack.lastElement();
return activity;
}
/**
* 结束当前Activity(堆栈中最后压入的)
*/
public void finishActivity(){
Activity activity=activityStack.lastElement();
finishActivity(activity);
}
/**
* 结束指定的Activity
*/
public void finishActivity(Activity activity){
if(activity!=null&&activityStack!=null){
activityStack.remove(activity);
activity.finish();
activity=null;
}
}
/**
* 结束指定的Activity
*/
public void finishActivity2(Activity activity){
if(activity!=null){
activityStack2.remove(activity);
activity.finish();
activity=null;
}
}
/**
* 结束指定类名的Activity
*/
public void finishActivity(Class<?> cls){
for (Activity activity : activityStack) {
if(activity.getClass().equals(cls) ){
finishActivity(activity);
}
}
}
/**
* 结束所有Activity
*/
public void finishAllActivity(){
for (int i = 0, size = activityStack.size(); i < size; i++){
if (null != activityStack.get(i)){
activityStack.get(i).finish();
}
}
activityStack.clear();
android.os.Process.killProcess(android.os.Process.myPid());
}
/**
* 退出应用程序
*/
public void AppExit(Context context) {
try {
finishAllActivity();
ActivityManager activityMgr= (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
// activityMgr.restartPackage(context.getPackageName());
activityMgr.killBackgroundProcesses(context.getPackageName());
System.exit(0);
android.os.Process.killProcess(android.os.Process.myPid());
} catch (Exception e) { }
}
package cn.shangyu.gdxzExpert.base;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import android.os.Build;
import java.util.Stack;
import cn.shangyu.gdxzExpert.utils.LogUtil;
public class AppManager {
private static Stack<Activity> activityStack;
private static AppManager instance;
private static Stack<Activity> activityStack1;
private static Stack<Activity> activityStack2;
// 当前resumed的Activity,通过ActivityLifecycleCallbacks跟踪
private static Activity currentResumedActivity;
private AppManager(){}
/**
* 单一实例
*/
public static AppManager getAppManager(){
if(instance==null){
instance=new AppManager();
}
return instance;
}
/**
* 添加Activity到堆
*/
public void addActivity(Activity activity){
if(activityStack==null){
activityStack=new Stack<Activity>();
}
activityStack.add(activity);
LogUtil.i("AppManager", "addActivity -> "
+ (activity == null ? "null" : activity.getClass().getSimpleName())
+ ", stackSize=" + activityStack.size());
logActivityStackInternal("addActivity");
}
/**
* 添加积分Activity到堆
*/
public void addActivity1(Activity activity){
if(activityStack1==null){
activityStack1=new Stack<Activity>();
}
activityStack1.add(activity);
}
/**
* 添加一问多答Activity到堆
*/
public void addActivity2(Activity activity){
if(activityStack2==null){
activityStack2=new Stack<Activity>();
}
activityStack2.add(activity);
}
/**
* 结束所有积分Activity
*/
public void finishAllActivity1(){
if (activityStack1!=null) {
for (int i = 0, size = activityStack1.size(); i < size; i++){
if (null != activityStack1.get(i)){
activityStack1.get(i).finish();
}
}
activityStack1.clear();
}
// android.os.Process.killProcess(android.os.Process.myPid());
}
/**
* 结束所有一问多答Activity
*/
public void finishAllActivity2(){
if (activityStack2!=null) {
for (int i = 0, size = activityStack2.size(); i < size; i++){
if (null != activityStack2.get(i)){
activityStack2.get(i).finish();
}
}
activityStack2.clear();
}
}
/**
* 设置当前resumed的Activity(由ActivityLifecycleCallbacks调用)
*/
public static void setCurrentResumedActivity(Activity activity) {
currentResumedActivity = activity;
LogUtil.i("AppManager", "setCurrentResumedActivity -> "
+ (activity == null ? "null" : activity.getClass().getSimpleName()));
logActivityStackInternal("setCurrentResumedActivity");
}
/**
* 获取当前resumed的Activity(用于生命周期回调中比较)
*/
public static Activity getCurrentResumedActivity() {
return currentResumedActivity;
}
/**
* 清除当前resumed的Activity(当Activity销毁时调用)
*/
public static void clearCurrentResumedActivity(Activity activity) {
if (currentResumedActivity == activity) {
currentResumedActivity = null;
LogUtil.i("AppManager", "clearCurrentResumedActivity -> set currentResumedActivity = null");
logActivityStackInternal("clearCurrentResumedActivity");
}
}
/**
* 检查Activity是否有效(未finish且未destroy)
*/
private boolean isActivityValid(Activity activity) {
if (activity == null) {
return false;
}
if (activity.isFinishing()) {
return false;
}
// isDestroyed()方法在API 17及以上才可用
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
if (activity.isDestroyed()) {
return false;
}
}
return true;
}
/**
* 获取当前Activity(优先返回resumed的Activity,否则返回堆栈中最后压入的)
*/
public Activity currentActivity(){
// 优先返回当前resumed的Activity
if (isActivityValid(currentResumedActivity)) {
LogUtil.i("AppManager", "currentActivity -> use currentResumedActivity: "
+ currentResumedActivity.getClass().getSimpleName());
return currentResumedActivity;
}
LogUtil.i("AppManager", "currentActivity -> currentResumedActivity invalid or null, try activityStack");
// 如果resumed的Activity不可用,则从堆栈中获取
if(activityStack == null || activityStack.isEmpty()){
LogUtil.i("AppManager", "currentActivity -> activityStack is null or empty");
return null;
}
// 从堆栈末尾开始查找,找到第一个未销毁的Activity
for (int i = activityStack.size() - 1; i >= 0; i--) {
Activity activity = activityStack.get(i);
if (isActivityValid(activity)) {
LogUtil.i("AppManager", "currentActivity -> use stack[" + i + "]: "
+ activity.getClass().getSimpleName());
return activity;
}
}
LogUtil.i("AppManager", "currentActivity -> no valid Activity found in stack");
return null;
}
/**
* 结束当前Activity(堆栈中最后压入的)
*/
public void finishActivity(){
if(activityStack == null || activityStack.isEmpty()){
return;
}
Activity activity=activityStack.lastElement();
finishActivity(activity);
}
/**
* 结束指定的Activity
*/
public void finishActivity(Activity activity){
if(activity!=null&&activityStack!=null){
activityStack.remove(activity);
LogUtil.i("AppManager", "finishActivity -> "
+ activity.getClass().getSimpleName()
+ ", stackSize(afterRemove)=" + activityStack.size());
activity.finish();
activity=null;
logActivityStackInternal("finishActivity");
}
}
/**
* 结束指定的Activity
*/
public void finishActivity2(Activity activity){
if(activity!=null && activityStack2!=null){
activityStack2.remove(activity);
activity.finish();
activity=null;
}
}
/**
* 结束指定类名的Activity
*/
public void finishActivity(Class<?> cls){
if(activityStack == null || activityStack.isEmpty()){
return;
}
for (Activity activity : activityStack) {
if(activity.getClass().equals(cls) ){
finishActivity(activity);
}
}
}
/**
* 结束所有Activity
*/
public void finishAllActivity(){
if(activityStack == null || activityStack.isEmpty()){
LogUtil.i("AppManager", "finishAllActivity -> activityStack empty, kill process");
android.os.Process.killProcess(android.os.Process.myPid());
return;
}
for (int i = 0, size = activityStack.size(); i < size; i++){
if (null != activityStack.get(i)){
LogUtil.i("AppManager", "finishAllActivity -> finish "
+ activityStack.get(i).getClass().getSimpleName());
activityStack.get(i).finish();
}
}
activityStack.clear();
LogUtil.i("AppManager", "finishAllActivity -> stack cleared, size=" + activityStack.size());
android.os.Process.killProcess(android.os.Process.myPid());
}
/**
* 打印当前 activityStack 和 currentResumedActivity 的详细信息,方便排查 currentActivity 为空的问题
*/
public static void logActivityStackInternal(String from) {
if (activityStack == null || activityStack.isEmpty()) {
LogUtil.i("AppManager", "[" + from + "] activityStack is empty, currentResumedActivity="
+ (currentResumedActivity == null ? "null" : currentResumedActivity.getClass().getSimpleName()));
return;
}
StringBuilder sb = new StringBuilder();
sb.append("[").append(from).append("] activityStack size=").append(activityStack.size());
sb.append(", currentResumedActivity=")
.append(currentResumedActivity == null ? "null" : currentResumedActivity.getClass().getSimpleName());
sb.append(", stack=[");
for (int i = 0; i < activityStack.size(); i++) {
Activity a = activityStack.get(i);
sb.append(i)
.append(":")
.append(a == null ? "null" : a.getClass().getSimpleName());
if (i != activityStack.size() - 1) {
sb.append(", ");
}
}
sb.append("]");
LogUtil.i("AppManager", sb.toString());
}
/**
* 退出应用程序
*/
public void AppExit(Context context) {
try {
finishAllActivity();
ActivityManager activityMgr= (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
// activityMgr.restartPackage(context.getPackageName());
activityMgr.killBackgroundProcesses(context.getPackageName());
System.exit(0);
android.os.Process.killProcess(android.os.Process.myPid());
} catch (Exception e) { }
}
}
@@ -0,0 +1,81 @@
package cn.shangyu.gdxzExpert.bean;
public class UniappMpCheckWgt {
private String code;
private DataBean data;
private String message;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public static class DataBean {
private String version_name;
private Integer version_code;
private String url;
private String note;
@Override
public String toString() {
return "DataBean{" +
"version_name='" + version_name + '\'' +
", version_code=" + version_code +
", url='" + url + '\'' +
", note='" + note + '\'' +
'}';
}
public String getVersion_name() {
return version_name;
}
public void setVersion_name(String version_name) {
this.version_name = version_name;
}
public Integer getVersion_code() {
return version_code;
}
public void setVersion_code(Integer version_code) {
this.version_code = version_code;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
}
}
@@ -61,8 +61,10 @@ import cn.shangyu.gdxzExpert.umeng.PushCourseUrlDetailActivity;
import cn.shangyu.gdxzExpert.umeng.PushNewsDetailActivity;
import cn.shangyu.gdxzExpert.umeng.PushZhiBoActivity;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
import me.majiajie.pagerbottomtabstrip.NavigationController;
@@ -590,7 +592,10 @@ public class BigNewSystemMessageActivity extends BaseActivity implements OnCallB
}
else
{
intent.setClass(getContext(), PointsMallActivity.class);
// intent.setClass(getContext(), PointsMallActivity.class);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
break;
}
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -112,8 +112,9 @@ public class CrashHandler implements Thread.UncaughtExceptionHandler {
private void restart(){
Intent intent = new Intent(mContext, WelcomeUI.class);
PendingIntent restartIntent = PendingIntent.getActivity(
mContext.getApplicationContext(), 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
// Android 12+ 要求 PendingIntent 指定可变性,这里仅用于重启应用,不需要修改内容,使用 FLAG_IMMUTABLE
PendingIntent restartIntent = PendingIntent.getActivity(
mContext.getApplicationContext(), 0, intent, PendingIntent.FLAG_IMMUTABLE);
//退出程序
AlarmManager mgr = (AlarmManager)mContext.getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent); // 1秒钟后重启应用
@@ -279,7 +279,7 @@ public class DemoMessageReceiver extends PushMessageReceiver {
notificationManager.createNotificationChannel(channel);
Intent intent = new Intent(BaseApplication.getContext(), MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(BaseApplication.getContext(), 35,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
Notification notification = new Notification.Builder(BaseApplication.getContext(), "随访消息")
.setContentTitle(title)
.setContentText(content)
@@ -20,6 +20,7 @@ import cn.shangyu.gdxzExpert.R;
import cn.shangyu.gdxzExpert.activity.CoursewareActivity;
import cn.shangyu.gdxzExpert.activity.MainActivity;
import cn.shangyu.gdxzExpert.activity.MyLibraryActivity;
import cn.shangyu.gdxzExpert.activity.PublicSearchActivity;
import cn.shangyu.gdxzExpert.activity.UpanExchangeActivity;
import cn.shangyu.gdxzExpert.activity.VideoActivity;
import cn.shangyu.gdxzExpert.base.BaseFragment;
@@ -37,6 +38,7 @@ import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
@@ -198,8 +200,11 @@ public class GetWelfAreFragment extends BaseFragment implements View.OnClickList
}
else
{
startActivity(new Intent(getActivity(), PointsMallActivity.class));
// startActivity(new Intent(getActivity(), PointsMallActivity.class));
UniappUtil.showUniMp(getActivity(), "/pages_goods/pointMall/pointMall", null);
}
} else if (id == R.id.tv_splijilingqu) {
if(BigModule())
{
@@ -207,7 +212,7 @@ public class GetWelfAreFragment extends BaseFragment implements View.OnClickList
}
else
{
MyUserIconUtil.showUniMp(getActivity(), "/pages_app/video/video", null);
UniappUtil.showUniMp(getActivity(), "/pages_app/video/video", null);
// startActivity(new Intent(getActivity(), VideoActivity.class));
}
} else if (id == R.id.tv_kjlijilingqu) {
@@ -147,6 +147,7 @@ import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.view.NormalItemView;
import cn.shangyu.gdxzExpert.view.SpaceItemDecoration;
@@ -1082,7 +1083,7 @@ public class HomeNewFragment extends BaseFragment implements OnClickListener,OnC
// Intent intent2 = new Intent(mActivity, VideoActivity.class);
// startActivity(intent2);
MyUserIconUtil.showUniMp(mainActivity, "/pages_app/video/video", null);
UniappUtil.showUniMp(mainActivity, "/pages_app/video/video", null);
} else if (id == R.id.more3) {
if(navigationController.getSelected()==0)
{
@@ -1093,7 +1094,7 @@ public class HomeNewFragment extends BaseFragment implements OnClickListener,OnC
{
MobclickAgent.onEvent(mainActivity,EXPERT_HOME_COURSEWARE_MORE);
// startActivity(new Intent(mActivity, CoursewareActivity.class));
MyUserIconUtil.showUniMp(mainActivity, "/pages_app/ppt/ppt", null);
UniappUtil.showUniMp(mainActivity, "/pages_app/ppt/ppt", null);
}
} else if (id == R.id.im_1) {
initEzhanWeb(lists.get(huan).get(0).getUrl());
@@ -23,6 +23,7 @@ import cn.shangyu.gdxzExpert.base.BaseFragment;
import cn.shangyu.gdxzExpert.polyvplayer.QualityCourseActivity;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
/**
@@ -100,13 +101,13 @@ public class KeepEducationFragment extends BaseFragment implements View.OnClickL
} else if (id == R.id.rl_kejian) {//肝胆课件
// MobclickAgent.onEvent(mActivity,EXPERT_TAB_EDUCATION_COURSEWARE);
// startActivity(new Intent(mActivity, CoursewareActivity.class));
MyUserIconUtil.showUniMp(mainActivity, "/pages_app/ppt/ppt", null);
UniappUtil.showUniMp(mainActivity, "/pages_app/ppt/ppt", null);
} else if (id == R.id.rl_casesuions) {//病例交流
startActivity(new Intent(mActivity, CasediscussionActivity.class));
} else if (id == R.id.rl_video) {//经典病例
startActivity(new Intent(mActivity, MyCicleActivity.class));
} else if (id == R.id.rl_lczhaomu) {//肝胆视频
MyUserIconUtil.showUniMp(mainActivity, "/pages_app/video/video", null);
UniappUtil.showUniMp(mainActivity, "/pages_app/video/video", null);
// startActivity(new Intent(mActivity, VideoActivity.class));
} else if (id == R.id.rl_office_work) {//精品课程
startActivity( new Intent(mActivity, QualityCourseActivity.class));
@@ -51,9 +51,11 @@ import cn.shangyu.gdxzExpert.activity.MyCoursewareActivity;
import cn.shangyu.gdxzExpert.activity.MyDetailInfoActivity;
import cn.shangyu.gdxzExpert.activity.MyDownLoadsActivity;
import cn.shangyu.gdxzExpert.activity.MyFlowerActivity;
import cn.shangyu.gdxzExpert.activity.MyFuliCardActivity;
import cn.shangyu.gdxzExpert.activity.MyMindActivity;
import cn.shangyu.gdxzExpert.activity.MyQrCodeActivity;
import cn.shangyu.gdxzExpert.activity.MyWelfAreActivity;
import cn.shangyu.gdxzExpert.activity.NavigationActivity;
import cn.shangyu.gdxzExpert.activity.OutofPatientNoticeActivity;
import cn.shangyu.gdxzExpert.activity.PoMessageActivity;
import cn.shangyu.gdxzExpert.activity.SendMindActivity;
@@ -72,10 +74,12 @@ import cn.shangyu.gdxzExpert.utils.Constant;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.ImageOptions;
import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.UpdateVersionUtils;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.utils.ValidateUtils;
@@ -343,7 +347,9 @@ public class MyFragment extends BaseFragment implements OnClickListener,OnCallBa
//
// break;
} else if (id == R.id.my_qr_code) {// 我的二维码
startActivity(new Intent(mActivity, MyQrCodeActivity.class));
// startActivity(new Intent(mActivity, MyQrCodeActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_app/myCode/myCode", null);
} else if (id == R.id.rl_my_qr_sao) {// 扫一扫
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
@@ -377,8 +383,10 @@ public class MyFragment extends BaseFragment implements OnClickListener,OnCallBa
// startActivity(new Intent(mActivity, SendMindActivity.class));
// startActivity(new Intent(mActivity, MyWorkTableActivity.class));
// ToastUtil.showMessage("暂无优惠券");
Intent intentpoints = new Intent(mActivity, AccumulatePointsActivity.class);
startActivity(intentpoints);
// Intent intentpoints = new Intent(mActivity, AccumulatePointsActivity.class);
// startActivity(intentpoints);
UniappUtil.showUniMp(mActivity, "/pages_app/myPoint/myPoint", null);
} else if (id == R.id.myminds) {// 我的心意
startActivity(new Intent(mActivity, MyMindActivity.class));
} else if (id == R.id.myfapiao) {
@@ -389,7 +397,9 @@ public class MyFragment extends BaseFragment implements OnClickListener,OnCallBa
} else if (id == R.id.my_courseware) {
startActivity(new Intent(mActivity, MyCoursewareActivity.class));
} else if (id == R.id.mywelfare) {//我的福利
startActivity(new Intent(mActivity ,MyWelfAreActivity.class));
// startActivity(new Intent(mActivity ,MyWelfAreActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_app/myWelfare/myWelfare", null);
} else if (id == R.id.tv_rongyu1) {//我的荣誉
gethonorDetail(honorList.get(0).getId());
} else if (id == R.id.tv_rongyu2) {
@@ -100,6 +100,7 @@ import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.UpdateVersionUtils;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
@@ -605,7 +606,9 @@ public class MyNewFragment extends BaseFragment implements View.OnClickListener,
} else if (id == R.id.tv_qiandao) {
if(qiandao)
{
startActivity(new Intent(mActivity, PointsMallActivity.class));
// startActivity(new Intent(mActivity, PointsMallActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_goods/pointMall/pointMall", null);
}
else
{
@@ -620,13 +623,16 @@ public class MyNewFragment extends BaseFragment implements View.OnClickListener,
} else if (id == R.id.pic) {
startActivity(new Intent(mActivity, MyDetailInfoActivity.class));
} else if (id == R.id.r_banck) {
startActivity(new Intent(mActivity, MyBankCardActivity.class));
// startActivity(new Intent(mActivity, MyBankCardActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_app/idcardAuth/bankCardList", null);
} else if (id == R.id.r_fapiao) {
startActivity(new Intent(mActivity, FaPiaoActivity.class));
} else if (id == R.id.r_shezhi) {
startActivity(new Intent(mActivity, SettingAndHelpActivity.class));
} else if (id == R.id.r_filicard) {
startActivity(new Intent(mActivity, MyFuliCardActivity.class));
// startActivity(new Intent(mActivity, MyFuliCardActivity.class));
UniappUtil.showUniMp(mActivity, "/pages_app/myWelfareCard/myWelfareCard", null);
}
}
@@ -1,5 +1,6 @@
package cn.shangyu.gdxzExpert.netease.bagder;
import android.content.Context;
import android.os.Handler;
import com.netease.nim.uikit.api.NimUIKit;
@@ -29,6 +30,22 @@ public class Badger {
SharePrefUtil.saveInt(UIUtils.getContext(),"unreadFollow",unreadFollow);
}
/**
* 清除桌面角标:随访未读计数、ShortcutBadger 角标,并同步为 0。
*/
public static void clearAllBadges(Context context) {
Context appContext = context != null ? context.getApplicationContext() : UIUtils.getContext();
unreadFollow = 0;
saveUnreadFollow();
support = true;
try {
ShortcutBadger.removeCount(appContext);
ShortcutBadger.applyCount(appContext, 0);
} catch (Exception ignore) {
}
updateBadgerCount(0);
}
public static void updateBadgerCount(final int unreadCount) {
if (!support) {
return; // O版本及以上不再支持
@@ -99,6 +99,7 @@ import java.util.List;
import java.util.Map;
import cn.shangyu.gdxzExpert.R;
import cn.shangyu.gdxzExpert.application.BaseApplication;
import cn.shangyu.gdxzExpert.activity.EvaluateActivity;
import cn.shangyu.gdxzExpert.activity.PayClassActivity;
import cn.shangyu.gdxzExpert.adapter.BaseFragemetAdapter;
@@ -140,8 +141,12 @@ import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UpdateVersionUtils;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.SnapUpCountDownTimerView;
import io.dcloud.feature.sdk.Interface.IUniMP;
import static cn.shangyu.gdxzExpert.utils.Constant.uniapp_mp_appid;
public class CourseDetailPolyvPlayerActivity extends AppCompatActivity implements View.OnClickListener, IntroduceDetailFragment.ChooseListener {
private static final String EXTRA_FROM_UNIMP_GO_COURSE_DETAIL = "from_unimp_go_course_detail";
private FrameLayout head;
/**
* 视频控制栏
@@ -246,6 +251,7 @@ public class CourseDetailPolyvPlayerActivity extends AppCompatActivity implement
private PolyvViceScreenLayout viceScreenLayout;
private boolean isCalledStopOnPipModeChanged = false;
private boolean isOnBackKeyPressed;
private boolean fromUniMpGoCourseDetail = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -257,6 +263,7 @@ public class CourseDetailPolyvPlayerActivity extends AppCompatActivity implement
opencontents=getIntent().getStringExtra("opencontents");
openid=getIntent().getStringExtra("openid");
pinglun=getIntent().getStringExtra("pinglun");
fromUniMpGoCourseDetail = getIntent().getBooleanExtra(EXTRA_FROM_UNIMP_GO_COURSE_DETAIL, false);
initnormalview();
initPolyview();
initView();
@@ -1477,8 +1484,8 @@ public class CourseDetailPolyvPlayerActivity extends AppCompatActivity implement
needreportSome("share","","");
break;
case R.id.top_back:
finish();
break;
handleBackAction();
break;
case R.id.r_buy:
MobclickAgent.onEvent(CourseDetailPolyvPlayerActivity.this,EXPERT_CLASS_QUALITY_PAY);
Intent intent=new Intent(CourseDetailPolyvPlayerActivity.this, PayClassActivity.class);
@@ -1494,6 +1501,16 @@ public class CourseDetailPolyvPlayerActivity extends AppCompatActivity implement
}
private void handleBackAction() {
if (fromUniMpGoCourseDetail) {
IUniMP uniappMP = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
if (uniappMP != null && uniappMP.isRunning()) {
uniappMP.showUniMP();
}
}
finish();
}
@Override
protected void onStop() {
@@ -12,6 +12,7 @@ import cn.shangyu.gdxzExpert.base.BaseActivity;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
/**
@@ -82,7 +83,7 @@ public class MyDownLoadVideoActivity extends BaseActivity {
break;
case R.id.rl_3:
//跳到uniapp 的视频缓存页面
MyUserIconUtil.showUniMp(MyDownLoadVideoActivity.this, "/pages_app/downLoadVideo/downLoadVideo", null);
UniappUtil.showUniMp(MyDownLoadVideoActivity.this, "/pages_app/downLoadVideo/downLoadVideo", null);
break;
}
}
@@ -31,8 +31,10 @@ import cn.shangyu.gdxzExpert.pulltorefreshview.PullToRefreshListView;
import cn.shangyu.gdxzExpert.ui.CustomProgressDialog;
import cn.shangyu.gdxzExpert.utils.CommonUtil;
import cn.shangyu.gdxzExpert.utils.LogUtil;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UIUtils;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.view.RollViewPager;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
@@ -202,8 +204,10 @@ public class QualityCourseActivity extends BaseActivity implements OnCallBackFro
}
else
{
Intent intent3 = new Intent(QualityCourseActivity.this, PointsMallActivity.class);
startActivity(intent3);
// Intent intent3 = new Intent(QualityCourseActivity.this, PointsMallActivity.class);
// startActivity(intent3);
UniappUtil.showUniMp(QualityCourseActivity.this, "/pages_goods/pointMall/pointMall", null);
}
break;
@@ -1902,7 +1902,7 @@ public class PolyvPlayerMediaController extends PolyvBaseMediaController impleme
videoActivity,
requestCode,
new Intent("media_control").putExtra("control_type", controlType),
0);
PendingIntent.FLAG_IMMUTABLE);
final Icon icon = Icon.createWithResource(videoActivity, iconId);
actions.add(new RemoteAction(icon, title, title, intent));
@@ -66,7 +66,8 @@ public class PolyvBackgroundPlayService extends Service {
public Notification createNotification(String title, String text, int icon) {
Intent intent = new Intent(this, CourseDetailPolyvPlayerActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, REQUEST_CODE_PLAY_ACTIVITY, intent, PendingIntent.FLAG_UPDATE_CURRENT);
PendingIntent pendingIntent = PendingIntent.getActivity(this, REQUEST_CODE_PLAY_ACTIVITY, intent,
PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_ID);
builder.setContentIntent(pendingIntent);
builder.setShowWhen(false);
@@ -42,10 +42,13 @@ import cn.shangyu.gdxzExpert.big.activity.BigPointsMallActivity;
import cn.shangyu.gdxzExpert.netease.mixpush.DemoMixPushMessageHandler;
import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.polyvplayer.CourseDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.polyvplayer.QualityCourseActivity;
import cn.shangyu.gdxzExpert.polyvplayer.VideoDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.splash.WelcomeUI;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
/**
@@ -183,7 +186,9 @@ public class MfrMessageActivity extends UmengNotifyClickActivity {
}
else
{
intent3.setClass(getContext(), PointsMallActivity.class);
// intent3.setClass(getContext(), PointsMallActivity.class);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
break;
}
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -256,9 +261,11 @@ public class MfrMessageActivity extends UmengNotifyClickActivity {
case"33"://阅读福利
case"34"://观看福利
case"36"://特别奖励
intent3.setClass(getContext(), AccumulatePointsActivity.class);
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent3);
// intent3.setClass(getContext(), AccumulatePointsActivity.class);
// intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// getContext().startActivity(intent3);
UniappUtil.showUniMp(getContext(), "/pages_app/myPoint/myPoint", null);
finish();
break;
case"35"://福利卡
@@ -53,8 +53,10 @@ import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.polyvplayer.CourseDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.polyvplayer.VideoDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.ToastUtil;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
import cn.shangyu.gdxzExpert.widget.LoadingPage;
import me.majiajie.pagerbottomtabstrip.NavigationController;
@@ -517,7 +519,10 @@ public class NewSystemMessageActivity extends BaseActivity implements OnCallBac
}
else
{
intent.setClass(getContext(), PointsMallActivity.class);
// intent.setClass(getContext(), PointsMallActivity.class);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
break;
}
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -599,9 +604,11 @@ public class NewSystemMessageActivity extends BaseActivity implements OnCallBac
case"33"://阅读福利
case"34"://观看福利
case"36"://特别奖励
intent.setClass(getContext(), AccumulatePointsActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent);
// intent.setClass(getContext(), AccumulatePointsActivity.class);
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// getContext().startActivity(intent);
UniappUtil.showUniMp(getContext(), "/pages_app/myPoint/myPoint", null);
break;
case"35"://福利卡
intent.setClass(getContext(), MyFuliCardActivity.class);
@@ -46,7 +46,9 @@ import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
import cn.shangyu.gdxzExpert.polyvplayer.CourseDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.polyvplayer.VideoDetailPolyvPlayerActivity;
import cn.shangyu.gdxzExpert.utils.GsonTools;
import cn.shangyu.gdxzExpert.utils.MyUserIconUtil;
import cn.shangyu.gdxzExpert.utils.StringUtil;
import cn.shangyu.gdxzExpert.utils.UniappUtil;
import cn.shangyu.gdxzExpert.utils.Url;
@@ -83,6 +85,8 @@ public class PushHelper {
//获取推送实例
PushAgent pushAgent = PushAgent.getInstance(context);
pushAgent.setPackageListenerEnable(false);
pushAgent.setNotificationChannelName("系统通知");
//TODO:需修改为您app/src/main/AndroidManifest.xml中package值
pushAgent.setResourcePackageName("cn.shangyu.gdxzExpert");
@@ -251,7 +255,10 @@ public class PushHelper {
}
else
{
intent.setClass(getContext(), PointsMallActivity.class);
// intent.setClass(getContext(), PointsMallActivity.class);
UniappUtil.showUniMp(getContext(), "/pages_goods/pointMall/pointMall", null);
break;
}
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent);
@@ -320,9 +327,10 @@ public class PushHelper {
case"33"://阅读福利
case"34"://观看福利
case"36"://特别奖励
intent.setClass(getContext(), AccumulatePointsActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent);
// intent.setClass(getContext(), AccumulatePointsActivity.class);
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// getContext().startActivity(intent);
UniappUtil.showUniMp(getContext(), "/pages_app/myPoint/myPoint", null);
break;
case"35"://福利卡
intent.setClass(getContext(), MyFuliCardActivity.class);
@@ -298,6 +298,90 @@ public class HttpMD5SendInfoUtil {
}
public static void sendHttp(final String postUrl, Map<String, String> params, final OnCallBackFromNet callBack) {
HttpHelper.loadData(HttpMethod.GET, Url.getTimestamp,null, new RequestCallBack<String>() {
@Override
public void onSuccess(ResponseInfo<String> info) {
Map<String, String> param=new HashMap<>();
if(params != null){
param.putAll(params);
}
String uuid = SharePrefUtil.getString(getContext(), Constant.uuid, "");
if(StringUtil.isEmpty(uuid))
{
uuid= LogoutHelper.addUMTokenuuid;
}
param.put("user_uuid", uuid);
TimestampBean bean = GsonTools.fromGsonToBean(info.result, TimestampBean.class);
param.put("timestamp", bean.getTimestamp());
param.put("client_type", "A");
param.put("version", UpdateVersionUtils.getVersionName());
new Thread() {
public void run() {
String encoding = "UTF-8";
Gson gson = new Gson();
String params = gson.toJson(param);
byte[] data;
try {
String sign = SignUtil.getSign(param);
LogUtil.i("params = "+params.toString());
data = params.getBytes(encoding);
URL url = new URL(postUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type","application/json");
conn.setRequestProperty("sign",sign);
conn.setRequestProperty("Content-Length",String.valueOf(data.length));
conn.setConnectTimeout(5 * 1000);
OutputStream outStream = conn.getOutputStream();
outStream.write(data);
outStream.flush();
outStream.close();
int ssss=conn.getResponseCode() ;
if (ssss == 200) {
InputStream inStream = conn.getInputStream();
String result = new String(StreamTool.readInputStream(inStream), "UTF-8");
String string = new String(result);
LogUtil.i("result = "+result);
JSONObject jsonObject = new JSONObject(string);
String optString = jsonObject.optString("code");
String message = jsonObject.optString("message");
// Log.d("okhttp","result = "+result);
Log.d("okhttp","getRealyWorldToken "+result);
if ("200".equals(optString)) {
LogUtil.e("请求成功");
callBack.onCallbackFromThread(string);
}
else{
callBack.onCallbackFromThread(string);
}
}else {
LogUtil.e("Code = "+ssss);
}
} catch (Exception e) {
LogUtil.e("提交失败,请重试 = "+e.getMessage());
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}.start();
}
@Override
public void onFailure(HttpException arg0, String arg1) {
// ToastUtil.showToast("请求失败,请重试");
}
});
}
public static void sendJsonPostParamTokenMD5(Context context,final OnCallBackFromNet callBack){
@@ -64,7 +64,8 @@ import io.dcloud.feature.unimp.config.UniMPOpenConfiguration;
public class MyUserIconUtil {
public static void myIntent(Context context,String name){
if ("肝胆新闻".equals(name)||"肝胆时讯".equals(name)){
context.startActivity(new Intent(context, GandanConsultActivity.class));
// context.startActivity(new Intent(context, GandanConsultActivity.class));
UniappUtil.showUniMp(context, "/pages_app/newsList/newsList", null);
}else if ("名医名科".equals(name)){
context.startActivity(new Intent(context, GanDanHospitalActivity.class));
}else if ("药品助手".equals(name)){
@@ -74,7 +75,7 @@ public class MyUserIconUtil {
context.startActivity(intentwf);
}else if ("肝胆课件".equals(name)){
// context.startActivity(new Intent(context, CoursewareActivity.class));
showUniMp(context, "/pages_app/ppt/ppt", null);
UniappUtil.showUniMp(context, "/pages_app/ppt/ppt", null);
}else if ("精品课程".equals(name)){
context.startActivity(new Intent(context, QualityCourseActivity.class));
}else if ("肝病学院".equals(name)){
@@ -93,15 +94,18 @@ public class MyUserIconUtil {
intent1.setType("download");
context.startActivity(intent1);
}else if ("我的福利".equals(name)){
Intent intent1 = new Intent(context, MyWelfAreActivity.class);
context.startActivity(intent1);
// Intent intent1 = new Intent(context, MyWelfAreActivity.class);
// context.startActivity(intent1);
UniappUtil.showUniMp(context, "/pages_app/myWelfare/myWelfare", null);
}else if ("精品课".equals(name)){
Intent intent1 = new Intent(context, CourseActivity.class);
context.startActivity(intent1);
}
else if("积分商城".equals(name))
{
context.startActivity(new Intent(context, PointsMallActivity.class));
// context.startActivity(new Intent(context, PointsMallActivity.class));
UniappUtil.showUniMp(context, "/pages_goods/pointMall/pointMall", null);
// context.startActivity(new Intent(context, ResearchActivity.class));
}
else if("我的患者".equals(name))
@@ -112,7 +116,7 @@ public class MyUserIconUtil {
{
// context.startActivity(new Intent(context, VideoActivity.class));
// 调用公共方法打开uniapp mp
showUniMp(context, "/pages_app/video/video", null);
UniappUtil.showUniMp(context, "/pages_app/video/video", null);
}
else if("公益咨询".equals(name))
{
@@ -122,7 +126,7 @@ public class MyUserIconUtil {
{
// context.startActivity(new Intent(context, MyLibraryActivity.class));
// 调用公共方法打开uniapp mp
showUniMp(context, "/pages_app/zhinan/zhinan", null);
UniappUtil.showUniMp(context, "/pages_app/zhinan/zhinan", null);
}
else if ("专题e站".equals(name)){
Intent intent1 = new Intent(context, NewsDetailActivity.class);
@@ -143,23 +147,29 @@ public class MyUserIconUtil {
else
{
context.startActivity(new Intent(context, NormNewPatientActivity.class));
// UniappUtil.showUniMp(context, "/pages_app/myPatient/myPatient", null);
}
}
else if("患者分组".equals(name))
{
context.startActivity(new Intent(context, GroupingActivity.class));
// UniappUtil.showUniMp(context, "/pages_app/patientGroup/patientGroup", null);
}
else if("群发消息".equals(name))
{
context.startActivity(new Intent(context, SendGroupMsgListActivity.class));
// UniappUtil.showUniMp(context, "/pages_chat/groupMessage/groupMessage", null);
}
else if("随访二维码".equals(name))
{
context.startActivity(new Intent(context, MyQrCodeActivity.class));
// context.startActivity(new Intent(context, MyQrCodeActivity.class));
UniappUtil.showUniMp(context, "/pages_app/myCode/myCode", null);
}
else if("出诊计划".equals(name))
{
context.startActivity(new Intent(context, OutofPatientNoticeActivity.class));
// context.startActivity(new Intent(context, OutofPatientNoticeActivity.class));
UniappUtil.showUniMp(context, "/pages_chat/outPatient/outPatient", null);
}
else if("我的视频".equals(name))
{
@@ -180,19 +190,23 @@ public class MyUserIconUtil {
}
else if("我的账户".equals(name))
{
context.startActivity(new Intent(context, MyAccount2Activity.class));
// context.startActivity(new Intent(context, MyAccount2Activity.class));
UniappUtil.showUniMp(context, "/pages_app/myAccount/myAccount", null);
}
else if("我的积分".equals(name))
{
context.startActivity(new Intent(context, AccumulatePointsActivity.class));
// context.startActivity(new Intent(context, AccumulatePointsActivity.class));
UniappUtil.showUniMp(context, "/pages_app/myPoint/myPoint", null);
}
else if("我的鲜花".equals(name))
{
context.startActivity(new Intent(context, MyFlowerActivity.class));
// context.startActivity(new Intent(context, MyFlowerActivity.class));
UniappUtil.showUniMp(context, "/pages_app/myFlower/myFlower", null);
}
else if("课件明细".equals(name))
{
context.startActivity(new Intent(context, MyCoursewareActivity.class));
// context.startActivity(new Intent(context, MyCoursewareActivity.class));
UniappUtil.showUniMp(context, "/pages_app/myCourseware/myCourseware", null);
}
else if("课程明细".equals(name))
{
@@ -240,59 +254,6 @@ public class MyUserIconUtil {
// context.startActivity(new Intent(context, PointsMallActivity.class));
context.startActivity(new Intent(context, ResearchActivity.class));
}
}
/**
* 展示uniapp mp - 公共方法
* @param context 上下文
* @param targetPath
*/
public static void showUniMp(Context context, String targetPath, com.alibaba.fastjson.JSONObject pageParams) {
try {
String uuid = SharePrefUtil.getString(context, Constant.uuid, "");
if(StringUtil.isEmpty(uuid)){
return;
}
String access_token = SharePrefUtil.getString(context, "access_token", "");
String QueryString = StringUtil.toQueryString(pageParams);
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+QueryString);
uniapp_MP_cash.showUniMP();
}else{
if(StringUtil.notEmpty(targetPath)){
uniMPOpenConfiguration.extraData.put("targetPath", targetPath+QueryString);
}
IUniMP uniapp_MP = DCUniMPSDK.getInstance().openUniMP(mContext, uniapp_mp_appid, uniMPOpenConfiguration);
BaseApplication.getUniMPCaches().put(uniapp_MP.getAppid(), uniapp_MP);
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void closeUniMP(){
IUniMP uniapp_MP = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
if(uniapp_MP != null && uniapp_MP.isRunning()){
uniapp_MP.closeUniMP();
BaseApplication.getUniMPCaches().remove(uniapp_mp_appid);
}
}
}
@@ -0,0 +1,152 @@
package cn.shangyu.gdxzExpert.utils;
import android.content.Context;
import android.os.Environment;
import android.util.Log;
import androidx.annotation.NonNull;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
/**
* uniapp 下载工具
*/
public class UniappDownloadUtil {
private static UniappDownloadUtil downloadUtil;
private final OkHttpClient okHttpClient;
private Context context;
private String TAG = "下载页面";
public static UniappDownloadUtil get() {
if (downloadUtil == null) {
downloadUtil = new UniappDownloadUtil();
}
return downloadUtil;
}
private UniappDownloadUtil() {
okHttpClient = new OkHttpClient();
}
/**
* @param url 下载连接
* @param saveDir 储存下载文件的SDCard目录
* @param listener 下载监听
*/
public void download(Context context, final String url, final String saveDir, final String fileName, final OnDownloadListener listener) {
this.context= context;
// 需要token的时候可以这样做
// SharedPreferences sp=MyApp.getAppContext().getSharedPreferences("loginInfo", MODE_PRIVATE);
// Request request = new Request.Builder().header("token",sp.getString("token" , "")).url(url).build();
Request request = new Request.Builder().url(url).build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
// 下载失败
listener.onDownloadFailed();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
InputStream is = null;
byte[] buf = new byte[2048];
int len = 0;
FileOutputStream fos = null;
// 储存下载文件的目录
String savePath = isExistDir(saveDir);
Log.w(TAG,"存储下载目录:"+savePath);
try {
is = response.body().byteStream();
long total = response.body().contentLength();
File file = new File(savePath, getNameFromUrl(fileName));
Log.w(TAG,"最终路径:"+file);
fos = new FileOutputStream(file);
long sum = 0;
while ((len = is.read(buf)) != -1) {
fos.write(buf, 0, len);
sum += len;
int progress = (int) (sum * 1.0f / total * 100);
// 下载中
listener.onDownloading(progress);
}
fos.flush();
// 下载完成
listener.onDownloadSuccess(file);
} catch (Exception e) {
listener.onDownloadFailed();
} finally {
try {
if (is != null)
is.close();
} catch (IOException e) {
}
try {
if (fos != null)
fos.close();
} catch (IOException e) {
}
}
}
});
}
/**
* @param saveDir
* @return
* @throws IOException
* 判断下载目录是否存在
*/
private String isExistDir(String saveDir) throws IOException {
// saveDir 已经是完整路径(例如:/storage/emulated/0/Android/data/cn.shangyu.gdxzExpert/cache)
// 直接使用该路径,确保目录存在
File downloadFile = new File(saveDir);
if (!downloadFile.exists()) {
boolean created = downloadFile.mkdirs();
if (!created && !downloadFile.exists()) {
throw new IOException("无法创建下载目录: " + saveDir);
}
}
String savePath = downloadFile.getAbsolutePath();
Log.w(TAG,"下载目录:"+savePath);
return savePath;
}
/**
* @param url
* @return
* 传入文件名
*/
@NonNull
public String getNameFromUrl(String url) {
return url;
}
public interface OnDownloadListener {
/**
* 下载成功
*/
void onDownloadSuccess(File file);
/**
* @param progress
* 下载进度
*/
void onDownloading(int progress);
/**
* 下载失败
*/
void onDownloadFailed();
}
}
@@ -0,0 +1,331 @@
package cn.shangyu.gdxzExpert.utils;
import static com.taobao.accs.ACCSManager.mContext;
import static cn.shangyu.gdxzExpert.utils.Constant.token;
import static cn.shangyu.gdxzExpert.utils.Constant.uniapp_mp_appid;
import static cn.shangyu.gdxzExpert.utils.HttpMD5SendInfoUtil.sendJsonPostParamTokenMD5;
import static cn.shangyu.gdxzExpert.utils.UIUtils.getContext;
import static cn.shangyu.gdxzExpert.utils.Url.url_path;
import static cn.shangyu.gdxzExpert.utils.Url.weurl;
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 android.util.Log;
import android.widget.Toast;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.File;
import cn.shangyu.gdxzExpert.activity.BindWeChatActivity;
import cn.shangyu.gdxzExpert.activity.CaseDetailActivity;
import cn.shangyu.gdxzExpert.activity.CasediscussionActivity;
import cn.shangyu.gdxzExpert.activity.CourseActivity;
import cn.shangyu.gdxzExpert.activity.EditPhoneActivity;
import cn.shangyu.gdxzExpert.activity.GDLiveBroadcastActivity;
import cn.shangyu.gdxzExpert.activity.GanDanHospitalActivity;
import cn.shangyu.gdxzExpert.activity.GandanConsultActivity;
import cn.shangyu.gdxzExpert.activity.GroupingActivity;
import cn.shangyu.gdxzExpert.activity.MyAccount2Activity;
import cn.shangyu.gdxzExpert.activity.MyCicleActivity;
import cn.shangyu.gdxzExpert.activity.MyCoursewareActivity;
import cn.shangyu.gdxzExpert.activity.MyDownLoadsActivity;
import cn.shangyu.gdxzExpert.activity.MyFlowerActivity;
import cn.shangyu.gdxzExpert.activity.MyLibraryActivity;
import cn.shangyu.gdxzExpert.activity.MyPatientActivity;
import cn.shangyu.gdxzExpert.activity.MyQrCodeActivity;
import cn.shangyu.gdxzExpert.activity.MyScientificResearchActivity;
import cn.shangyu.gdxzExpert.activity.NewsDetailActivity;
import cn.shangyu.gdxzExpert.activity.OrderListActivity;
import cn.shangyu.gdxzExpert.activity.OutofPatientNoticeActivity;
import cn.shangyu.gdxzExpert.activity.PublicConsultationActivity;
import cn.shangyu.gdxzExpert.activity.ResearchActivity;
import cn.shangyu.gdxzExpert.activity.SendGroupMsgListActivity;
import cn.shangyu.gdxzExpert.activity.SendMindActivity;
import cn.shangyu.gdxzExpert.activity.SettingVersionActivity;
import cn.shangyu.gdxzExpert.activity.TestingActivity;
import cn.shangyu.gdxzExpert.application.BaseApplication;
import cn.shangyu.gdxzExpert.bean.SimpleBean;
import cn.shangyu.gdxzExpert.bean.UniappMpCheckWgt;
import cn.shangyu.gdxzExpert.big.activity.BiggNewPatientActivity;
import cn.shangyu.gdxzExpert.big.activity.NormNewPatientActivity;
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
import cn.shangyu.gdxzExpert.polyvplayer.MyDownLoadVideoActivity;
import cn.shangyu.gdxzExpert.polyvplayer.QualityCourseActivity;
import cn.shangyu.gdxzExpert.splash.UniappSplashView;
import cn.shangyu.gdxzExpert.view.CommonProgressDialog;
import io.dcloud.feature.sdk.DCUniMPSDK;
import io.dcloud.feature.sdk.Interface.IUniMP;
import io.dcloud.feature.unimp.config.IUniMPReleaseCallBack;
import io.dcloud.feature.unimp.config.UniMPOpenConfiguration;
import io.dcloud.feature.unimp.config.UniMPReleaseConfiguration;
public class UniappUtil {
/**
* 展示uniapp mp - 公共方法
* @param context 上下文
* @param targetPath
*/
public static void showUniMp(Context context, String targetPath, com.alibaba.fastjson.JSONObject pageParams) {
try {
checkWgt(context, targetPath, pageParams);
} catch (Exception e) {
e.printStackTrace();
}
}
//打开小程序
public static void show(Context context, String targetPath, com.alibaba.fastjson.JSONObject pageParams) {
try {
// 确保在主线程中执行,避免在后台线程中创建 Handler 导致异常
if (Looper.myLooper() == Looper.getMainLooper()) {
// 已经在主线程,直接执行
showInternal(context, targetPath, pageParams);
} else {
// 不在主线程,切换到主线程执行
Handler mainHandler = new Handler(Looper.getMainLooper());
mainHandler.post(new Runnable() {
@Override
public void run() {
showInternal(context, targetPath, pageParams);
}
});
}
} catch (Exception e) {
e.printStackTrace();
}
}
private static void showInternal(Context context, String targetPath, com.alibaba.fastjson.JSONObject pageParams) {
try {
String uuid = SharePrefUtil.getString(context, Constant.uuid, "");
if(StringUtil.isEmpty(uuid)){
return;
}
String access_token = SharePrefUtil.getString(context, "access_token", "");
String QueryString = StringUtil.toQueryString(pageParams);
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, ""));
userInfo.put("qrcode", SharePrefUtil.getString(context, "qrcode", ""));
userInfo.put("hospitalUuid", SharePrefUtil.getString(context, "hospitalUuid", ""));
userInfo.put("hospitalName", SharePrefUtil.getString(context, "hospitalName", ""));
userInfo.put("officeUuid", SharePrefUtil.getString(context, "officeUuid", ""));
userInfo.put("officeName", SharePrefUtil.getString(context, "officeName", ""));
userInfo.put("officePhone", SharePrefUtil.getString(context, "officePhone", ""));
userInfo.put("positionUuid", SharePrefUtil.getString(context, "positionUuid", ""));
userInfo.put("positionName", SharePrefUtil.getString(context, "positionName", ""));
try {
userInfo.put("isStar", SharePrefUtil.getString(context, "isStar", ""));
}catch (Exception e){
userInfo.put("isStar", SharePrefUtil.getInt(context, "isStar", 0));
}
String app_version = UpdateVersionUtils.getVersionName();
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("app_version", app_version);
uniMPOpenConfiguration.extraData.put("userInfo", userInfo);
IUniMP uniapp_MP_cash = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
Log.d("UniappUtil","uniapp_MP_cash="+uniapp_MP_cash);
if(uniapp_MP_cash != null){
Log.d("UniappUtil","uniapp_MP_cash.isRunning()="+uniapp_MP_cash.isRunning());
}
//存在但是不在运行
if(uniapp_MP_cash != null && !uniapp_MP_cash.isRunning()){
BaseApplication.getUniMPCaches().remove(uniapp_mp_appid);
uniapp_MP_cash.closeUniMP();
}
if(uniapp_MP_cash != null && uniapp_MP_cash.isRunning()){
uniapp_MP_cash.sendUniMPEvent("goPage", targetPath+QueryString);
uniapp_MP_cash.showUniMP();
}else{
if(StringUtil.notEmpty(targetPath)){
uniMPOpenConfiguration.extraData.put("targetPath", targetPath+QueryString);
}
// 优先使用传入的context(如果是Activity),否则使用mContext
Context openContext = context;
if (!(openContext instanceof android.app.Activity)) {
// 如果传入的不是Activity,尝试从AppManager获取当前Activity
android.app.Activity currentActivity = cn.shangyu.gdxzExpert.base.AppManager.getAppManager().currentActivity();
if (currentActivity != null) {
openContext = currentActivity;
} else {
// 如果还是获取不到,使用mContext作为fallback
openContext = mContext;
}
}
IUniMP uniapp_MP = DCUniMPSDK.getInstance().openUniMP(openContext, uniapp_mp_appid, uniMPOpenConfiguration);
BaseApplication.getUniMPCaches().put(uniapp_MP.getAppid(), uniapp_MP);
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void closeUniMP(){
IUniMP uniapp_MP = BaseApplication.getUniMPCaches().get(uniapp_mp_appid);
if(uniapp_MP != null && uniapp_MP.isRunning()){
uniapp_MP.closeUniMP();
BaseApplication.getUniMPCaches().remove(uniapp_mp_appid);
}
}
private static void checkWgt(Context context, String targetPath, com.alibaba.fastjson.JSONObject pageParams) throws JSONException {
JSONObject jsonObject = DCUniMPSDK.getInstance().getAppVersionInfo(uniapp_mp_appid);
if(jsonObject != null) {
Integer current_version_code = Integer.parseInt(jsonObject.getString("code"));
Log.d("checkWgt",current_version_code+",当前版本");
HttpMD5SendInfoUtil.sendHttp(Url.checkUniappWgt, null, new OnCallBackFromNet() {
@Override
public void onCallbackFromThread(String resultJson) {
Log.d("checkWgt",resultJson);
UniappMpCheckWgt checkWgt = GsonTools.fromGsonToBean(resultJson,UniappMpCheckWgt.class);
if(checkWgt.getData() != null){
Log.d("checkWgt", checkWgt.getData().toString());
Integer new_version_code = checkWgt.getData().getVersion_code();
if(new_version_code != null && new_version_code > current_version_code){
Log.d("checkWgt", "去更新");
updateWgt(context, uniapp_mp_appid, checkWgt.getData().getUrl(), targetPath, pageParams);
}else{
Log.d("checkWgt", "直接打开");
//真正打开小程序
show(context, targetPath, pageParams);
}
}else{
//真正打开小程序
show(context, targetPath, pageParams);
}
}
@Override
public void onCallBackFromThread(String resultJson, int resultCode) {
}
});
}else{
//真正打开小程序
show(context, targetPath, pageParams);
}
}
/**
* 热更新uniapp小程序
*/
private static void updateWgt(Context context, String uniapp_appid, String wgtUrl, String targetPath, com.alibaba.fastjson.JSONObject pageParams) {
// 替换真实的下载地址
final String wgtName = uniapp_appid + ".wgt";
String downFilePath = context.getExternalCacheDir().getPath();
// 确保使用主线程的 Looper 创建 Handler,避免在子线程中直接 new Handler() 导致异常
Handler uiHandler = new Handler(Looper.getMainLooper());
// 使用 final 数组来存储对话框引用,以便在内部类中访问
final CommonProgressDialog[] progressDialogRef = new CommonProgressDialog[1];
// 在主线程中创建和显示进度对话框
uiHandler.post(new Runnable() {
@Override
public void run() {
CommonProgressDialog progressDialog = new CommonProgressDialog(context);
progressDialog.setMessage("更新中");
progressDialog.setMax(100);
progressDialog.setProgress(0);
progressDialog.setCancelable(false);
progressDialog.show();
progressDialogRef[0] = progressDialog;
}
});
UniappDownloadUtil.get().download(context, wgtUrl, downFilePath, wgtName, new UniappDownloadUtil.OnDownloadListener() {
@Override
public void onDownloadSuccess(File file) {
UniMPReleaseConfiguration uniMPReleaseConfiguration = new UniMPReleaseConfiguration();
uniMPReleaseConfiguration.wgtPath = file.getPath();
// 没有密码可以不写
// uniMPReleaseConfiguration.password = "789456123";
uiHandler.post(new Runnable() {
@Override
public void run() {
// 关闭进度对话框
if (progressDialogRef[0] != null && progressDialogRef[0].isShowing()) {
progressDialogRef[0].dismiss();
}
DCUniMPSDK.getInstance().releaseWgtToRunPath(uniapp_appid, uniMPReleaseConfiguration, new IUniMPReleaseCallBack() {
@Override
public void onCallBack(int code, Object pArgs) {
if(code ==1) {
//释放wgt完成
try {
IUniMP uniMP = BaseApplication.getUniMPCaches().get(uniapp_appid);
if(uniMP != null && uniMP.isRunning()){
uniMP.closeUniMP();
}
//打开小程序
show(context, targetPath, pageParams);
} catch (Exception e) {
e.printStackTrace();
}
} else{
//释放wgt失败
}
}
});
}
});
}
@Override
public void onDownloading(int progress) {
// Log.i("checkWgt", progress+"");
final int finalProgress = progress;
uiHandler.post(new Runnable() {
@Override
public void run() {
// 更新进度对话框
if (progressDialogRef[0] != null && progressDialogRef[0].isShowing()) {
progressDialogRef[0].setProgress(finalProgress);
progressDialogRef[0].setMessage("更新中,请稍后");
}
}
});
}
@Override
public void onDownloadFailed() {
Log.e("unimp", "downFilePath === onDownloadFailed");
uiHandler.post(new Runnable() {
@Override
public void run() {
// 关闭进度对话框
if (progressDialogRef[0] != null && progressDialogRef[0].isShowing()) {
progressDialogRef[0].dismiss();
}
// 显示失败提示
ToastUtil.showToast("小程序更新失败,请稍后重试");
}
});
}
});
}
}
@@ -722,5 +722,6 @@ public static String getInteractionListByTag = urlmyLan
public static String checkUser=urlmyLan+"checkUser";//检查账户
public static String checkUniappWgt = urlmyLan + "checkUniappWgt";//检查小程序版本
}