33
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.view.WindowManager;
|
||||
|
||||
public class AppUtils {
|
||||
public static int dp2px(Context context, float dipValue) {
|
||||
try {
|
||||
final float scale = context.getResources().getDisplayMetrics().density;
|
||||
return (int) (dipValue * scale + 0.5f);
|
||||
} catch (Exception e) {
|
||||
return (int) dipValue;
|
||||
}
|
||||
}
|
||||
|
||||
public static int px2dp(Context context, float px) {
|
||||
try {
|
||||
final float scale = context.getResources().getDisplayMetrics().density;
|
||||
return (int) (px / scale + 0.5f);
|
||||
} catch (Exception e) {
|
||||
return (int) px;
|
||||
}
|
||||
}
|
||||
|
||||
public static int getPhoneWidthPixels(Context context) {
|
||||
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
|
||||
DisplayMetrics var2 = new DisplayMetrics();
|
||||
if (wm != null) {
|
||||
wm.getDefaultDisplay().getMetrics(var2);
|
||||
}
|
||||
|
||||
return var2.widthPixels;
|
||||
}
|
||||
|
||||
public static int getPhoneHeightPixels(Context context) {
|
||||
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
|
||||
DisplayMetrics var2 = new DisplayMetrics();
|
||||
if (wm != null) {
|
||||
wm.getDefaultDisplay().getMetrics(var2);
|
||||
}
|
||||
|
||||
return var2.heightPixels;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
public interface AuthPageConfig {
|
||||
/**
|
||||
* 配置授权页样式
|
||||
*/
|
||||
void configAuthPage();
|
||||
|
||||
/**
|
||||
* android8.0兼容
|
||||
*/
|
||||
void onResume();
|
||||
|
||||
/**
|
||||
* 释放sdk内部引用,防止内存泄漏
|
||||
*/
|
||||
void release();
|
||||
}
|
||||
@@ -0,0 +1,131 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.graphics.Color;
|
||||
import android.util.TypedValue;
|
||||
import android.view.Surface;
|
||||
import android.view.View;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.umeng.umverify.UMVerifyHelper;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.umeng.AppUtils.dp2px;
|
||||
|
||||
public abstract class BaseUIConfig implements AuthPageConfig {
|
||||
public Activity mActivity;
|
||||
public Context mContext;
|
||||
public UMVerifyHelper mAuthHelper;
|
||||
public int mScreenWidthDp;
|
||||
public int mScreenHeightDp;
|
||||
|
||||
public static AuthPageConfig init( int type,Activity activity, UMVerifyHelper authHelper) {
|
||||
switch (type) {
|
||||
case 0://login
|
||||
return new FullPortConfig(activity, authHelper);
|
||||
case 1://bind
|
||||
return new FullPortBindConfig(activity, authHelper);
|
||||
// case DIALOG_PORT:
|
||||
// return new DialogPortConfig(activity, authHelper);
|
||||
// case DIALOG_LAND:
|
||||
// return new DialogLandConfig(activity, authHelper);
|
||||
// case DIALOG_BOTTOM:
|
||||
// return new DialogBottomConfig(activity, authHelper);
|
||||
// case CUSTOM_VIEW:
|
||||
// return new CustomViewConfig(activity, authHelper);
|
||||
// case CUSTOM_XML:
|
||||
// return new CustomXmlConfig(activity, authHelper);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public BaseUIConfig(Activity activity, UMVerifyHelper authHelper) {
|
||||
mActivity = activity;
|
||||
mContext = activity.getApplicationContext();
|
||||
mAuthHelper = authHelper;
|
||||
}
|
||||
|
||||
protected View initSwitchView(int marginTop,String text,Boolean center) {
|
||||
TextView switchTV = new TextView(mContext);
|
||||
// RelativeLayout.LayoutParams mLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, dp2px(mContext, 50));
|
||||
RelativeLayout.LayoutParams mLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
|
||||
//一键登录按钮默认marginTop 270dp
|
||||
mLayoutParams.setMargins(dp2px(mContext,20), dp2px(mContext, marginTop), 0, 0);
|
||||
if(center)
|
||||
{
|
||||
mLayoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
|
||||
}
|
||||
switchTV.setText(text);
|
||||
switchTV.setTextColor(Color.parseColor("#8D2316"));
|
||||
switchTV.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14.0F);
|
||||
switchTV.setLayoutParams(mLayoutParams);
|
||||
return switchTV;
|
||||
}
|
||||
protected View initCustomhView(int marginTop,String text,Boolean center) {
|
||||
TextView switchTV = new TextView(mContext);
|
||||
// RelativeLayout.LayoutParams mLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, dp2px(mContext, 50));
|
||||
RelativeLayout.LayoutParams mLayoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
|
||||
//一键登录按钮默认marginTop 270dp
|
||||
mLayoutParams.setMargins(dp2px(mContext,20), dp2px(mContext, marginTop), 0, 0);
|
||||
if(center)
|
||||
{
|
||||
mLayoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
|
||||
}
|
||||
switchTV.setText(text);
|
||||
switchTV.setTextColor(Color.parseColor("#ff999999"));
|
||||
switchTV.setTextSize(TypedValue.COMPLEX_UNIT_SP, 13.0F);
|
||||
switchTV.setLayoutParams(mLayoutParams);
|
||||
return switchTV;
|
||||
}
|
||||
|
||||
protected void updateScreenSize(int authPageScreenOrientation) {
|
||||
int screenHeightDp = AppUtils.px2dp(mContext, AppUtils.getPhoneHeightPixels(mContext));
|
||||
int screenWidthDp = AppUtils.px2dp(mContext, AppUtils.getPhoneWidthPixels(mContext));
|
||||
int rotation = mActivity.getWindowManager().getDefaultDisplay().getRotation();
|
||||
if (authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_BEHIND) {
|
||||
authPageScreenOrientation = mActivity.getRequestedOrientation();
|
||||
}
|
||||
if (authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
|
||||
|| authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE
|
||||
|| authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_USER_LANDSCAPE) {
|
||||
rotation = Surface.ROTATION_90;
|
||||
} else if (authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
|
||||
|| authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT
|
||||
|| authPageScreenOrientation == ActivityInfo.SCREEN_ORIENTATION_USER_PORTRAIT) {
|
||||
rotation = Surface.ROTATION_180;
|
||||
}
|
||||
switch (rotation) {
|
||||
case Surface.ROTATION_0:
|
||||
case Surface.ROTATION_180:
|
||||
mScreenWidthDp = screenWidthDp;
|
||||
mScreenHeightDp = screenHeightDp;
|
||||
break;
|
||||
case Surface.ROTATION_90:
|
||||
case Surface.ROTATION_270:
|
||||
mScreenWidthDp = screenHeightDp;
|
||||
mScreenHeightDp = screenWidthDp;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 在横屏APP弹竖屏一键登录页面或者竖屏APP弹横屏授权页时处理特殊逻辑
|
||||
* Android8.0只能启动SCREEN_ORIENTATION_BEHIND模式的Activity
|
||||
*/
|
||||
public void onResume() {
|
||||
|
||||
}
|
||||
|
||||
public void release() {
|
||||
mAuthHelper.setAuthListener(null);
|
||||
mAuthHelper.setUIClickListener(null);
|
||||
mAuthHelper.removeAuthRegisterViewConfig();
|
||||
mAuthHelper.removeAuthRegisterXmlConfig();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,196 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.graphics.Color;
|
||||
import android.os.Build;
|
||||
import android.util.Log;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.umeng.umverify.UMResultCode;
|
||||
import com.umeng.umverify.UMVerifyHelper;
|
||||
import com.umeng.umverify.listener.UMAuthUIControlClickListener;
|
||||
import com.umeng.umverify.listener.UMCustomInterface;
|
||||
import com.umeng.umverify.view.UMAuthRegisterViewConfig;
|
||||
import com.umeng.umverify.view.UMAuthUIConfig;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
|
||||
public class FullPortBindConfig extends BaseUIConfig {
|
||||
private final String TAG = "LoginTAG";
|
||||
|
||||
|
||||
public FullPortBindConfig(Activity activity, UMVerifyHelper authHelper) {
|
||||
super(activity, authHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configAuthPage() {
|
||||
mAuthHelper.setUIClickListener(new UMAuthUIControlClickListener() {
|
||||
@Override
|
||||
public void onClick(String code, Context context, String jsonString) {
|
||||
try {
|
||||
JSONObject jsonObj = new JSONObject(jsonString);
|
||||
switch (code) {
|
||||
//点击授权页默认样式的返回按钮
|
||||
case UMResultCode.CODE_ERROR_USER_CANCEL:
|
||||
Log.e(TAG, "点击了授权页默认返回按钮");
|
||||
mAuthHelper.quitLoginPage();
|
||||
mActivity.finish();
|
||||
break;
|
||||
//点击授权页默认样式的切换其他登录方式 会关闭授权页
|
||||
//如果不希望关闭授权页那就setSwitchAccHidden(true)隐藏默认的 通过自定义view添加自己的
|
||||
case UMResultCode.CODE_ERROR_USER_SWITCH:
|
||||
Log.e(TAG, "点击了授权页默认切换其他登录方式");
|
||||
break;
|
||||
//点击一键登录按钮会发出此回调
|
||||
//当协议栏没有勾选时 点击按钮会有默认toast 如果不需要或者希望自定义内容 setLogBtnToastHidden(true)隐藏默认Toast
|
||||
//通过此回调自己设置toast
|
||||
case UMResultCode.CODE_ERROR_USER_LOGIN_BTN:
|
||||
if (!jsonObj.getBoolean("isChecked")) {
|
||||
Toast.makeText(mContext, R.string.custom_toast1, Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
break;
|
||||
//checkbox状态改变触发此回调
|
||||
case UMResultCode.CODE_ERROR_USER_CHECKBOX:
|
||||
|
||||
break;
|
||||
//点击协议栏触发此回调
|
||||
case UMResultCode.CODE_ERROR_USER_PROTOCOL_CONTROL:
|
||||
Log.e(TAG, "点击协议," + "name: " + jsonObj.getString("name") + ", url: " + jsonObj.getString("url"));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
mAuthHelper.removeAuthRegisterXmlConfig();
|
||||
mAuthHelper.removeAuthRegisterViewConfig();
|
||||
//添加自定义切换其他登录方式
|
||||
mAuthHelper.addAuthRegistViewConfig("switch_msg", new UMAuthRegisterViewConfig.Builder()
|
||||
.setView(initSwitchView(301,"绑定其他手机号",false))
|
||||
.setRootViewId(UMAuthRegisterViewConfig.RootViewId.ROOT_VIEW_ID_BODY)
|
||||
.setCustomInterface(new UMCustomInterface() {
|
||||
@Override
|
||||
public void onClick(Context context) {
|
||||
// Toast.makeText(mContext, "切换到短信登录方式", Toast.LENGTH_SHORT).show();
|
||||
// Intent pIntent = new Intent(mActivity, LoginNewActivity.class);
|
||||
// mActivity.startActivityForResult(pIntent, 1002);
|
||||
|
||||
mAuthHelper.quitLoginPage();
|
||||
|
||||
|
||||
}
|
||||
}).build());
|
||||
mAuthHelper.addAuthRegistViewConfig("text", new UMAuthRegisterViewConfig.Builder()
|
||||
.setView(initCustomhView(220,"根据工信部网络平台实名制要求,需要您绑定手机号",false))
|
||||
.setRootViewId(UMAuthRegisterViewConfig.RootViewId.ROOT_VIEW_ID_BODY)
|
||||
.build());
|
||||
// mAuthHelper.addAuthRegisterXmlConfig(new UMAuthRegisterXmlConfig.Builder()
|
||||
// .setLayout(R.layout.custom_bind, new UMAbstractPnsViewDelegate() {
|
||||
// @Override
|
||||
// public void onViewCreated(View view) {
|
||||
//
|
||||
// }
|
||||
// })
|
||||
// .build());
|
||||
int authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT;
|
||||
if (Build.VERSION.SDK_INT == 26) {
|
||||
authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_BEHIND;
|
||||
}
|
||||
// Resources resources =mContext.getResources();
|
||||
mAuthHelper.setAuthUIConfig(new UMAuthUIConfig.Builder()
|
||||
//loding
|
||||
.setLoadingImgDrawable(mContext.getResources().getDrawable(R.drawable.refresh_anim))
|
||||
// .setLoadingBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.icon_custom_toast_bg))
|
||||
//隐私政策
|
||||
// .setAppPrivacyOne("《肝胆相照隐私政策》", "http://doc.igandan.com/app/integral/permission.html")
|
||||
// .setAppPrivacyTwo("《肝胆相照用户协议》", "http://doc.igandan.com/app/integral/permission.html")
|
||||
.setPrivacyTextSize(12)
|
||||
.setAppPrivacyColor(Color.parseColor("#666666"),Color.parseColor("#8D2316"))
|
||||
.setUncheckedImgPath("login_new_unselect")
|
||||
.setCheckedImgPath("login_new_select")
|
||||
.setPrivacyBefore("绑定即同意")
|
||||
.setPrivacyMargin(15)
|
||||
.setPrivacyOffsetY_B(15)
|
||||
.setProtocolGravity(Gravity.LEFT)
|
||||
.setProtocolLayoutGravity(Gravity.LEFT)
|
||||
//协议网页
|
||||
.setWebViewStatusBarColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setWebNavColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setWebNavTextColor(Color.parseColor("#8D2316"))
|
||||
.setWebNavTextSize(20)
|
||||
.setWebSupportedJavascript(true)
|
||||
//隐藏默认切换其他登录方式
|
||||
.setSwitchAccHidden(true)
|
||||
//隐藏默认Toast
|
||||
.setLogBtnToastHidden(true)
|
||||
//沉浸式状态栏
|
||||
.setStatusBarColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setStatusBarHidden(false)
|
||||
.setStatusBarUIFlag(View.SYSTEM_UI_FLAG_LOW_PROFILE)
|
||||
.setLightColor(true)
|
||||
//导航栏
|
||||
.setNavColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setNavText("绑定手机")
|
||||
.setNavTextColor(Color.parseColor("#8D2316"))
|
||||
.setNavTextSize(20)
|
||||
.setNavReturnImgPath("top_back")
|
||||
.setNavReturnHidden(true)
|
||||
.setNavReturnImgWidth(40)
|
||||
.setNavReturnImgHeight(40)
|
||||
.setNavReturnScaleType(ImageView.ScaleType.CENTER)
|
||||
//logo
|
||||
.setLogoImgDrawable(mContext.getResources().getDrawable(R.drawable.icon_login_logo))
|
||||
.setLogoHidden(false)
|
||||
.setLogoHeight(73)
|
||||
.setLogoWidth(73)
|
||||
.setLogoOffsetY(53)
|
||||
.setSloganText("专家端")
|
||||
.setSloganTextSize(16)
|
||||
.setSloganTextColor(Color.parseColor("#8D2316"))
|
||||
.setSloganOffsetY(138)
|
||||
//号码
|
||||
.setNumberColor(Color.parseColor("#000000"))
|
||||
.setNumberSize(17)
|
||||
.setNumFieldOffsetY(172)
|
||||
//登录
|
||||
.setLogBtnText("一键绑定")
|
||||
.setLogBtnTextColor(Color.parseColor("#FFFFFF"))
|
||||
.setLogBtnTextSize(17)
|
||||
.setLogBtnMarginLeftAndRight(20)
|
||||
.setLogBtnBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.selector_btn))
|
||||
.setLogBtnHeight(39)
|
||||
.setLogBtnOffsetY(252)
|
||||
// //短信验证码登录
|
||||
// .setSwitchAccHidden(false)
|
||||
// .setSwitchAccText("短信验证码登录")
|
||||
// .setSwitchAccTextColor(Color.parseColor("#8D2316"))
|
||||
// .setSwitchAccTextSize(14)
|
||||
|
||||
//图片或者xml的传参方式为不包含后缀名的全称 需要文件需要放在drawable或drawable-xxx目录下 in_activity.xml, mytel_app_launcher.png
|
||||
.setAuthPageActIn("in_activity", "out_activity")
|
||||
.setAuthPageActOut("in_activity", "out_activity")
|
||||
.setVendorPrivacyPrefix("《")
|
||||
.setVendorPrivacySuffix("》")
|
||||
// .setPageBackgroundPath("page_background_color")
|
||||
// .setLogoImgPath("mytel_app_launcher")
|
||||
//一键登录按钮三种状态背景示例login_btn_bg.xml
|
||||
// .setLogBtnBackgroundPath("login_btn_bg")
|
||||
.setScreenOrientation(authPageOrientation)
|
||||
.create());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,413 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.graphics.Color;
|
||||
import android.os.Build;
|
||||
import android.text.SpannableStringBuilder;
|
||||
import android.text.Spanned;
|
||||
import android.text.TextPaint;
|
||||
import android.text.method.LinkMovementMethod;
|
||||
import android.text.style.ClickableSpan;
|
||||
import android.text.style.ForegroundColorSpan;
|
||||
import android.util.Log;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.umeng.umverify.UMResultCode;
|
||||
import com.umeng.umverify.UMVerifyHelper;
|
||||
import com.umeng.umverify.listener.UMAuthUIControlClickListener;
|
||||
import com.umeng.umverify.listener.UMCustomInterface;
|
||||
import com.umeng.umverify.view.UMAbstractPnsViewDelegate;
|
||||
import com.umeng.umverify.view.UMAuthRegisterViewConfig;
|
||||
import com.umeng.umverify.view.UMAuthRegisterXmlConfig;
|
||||
import com.umeng.umverify.view.UMAuthUIConfig;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
import cn.shangyu.gdxzExpert.activity.LoginNewActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.NewsDetailActivity;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
|
||||
public class FullPortConfig extends BaseUIConfig {
|
||||
private final String TAG = "LoginTAG";
|
||||
private Boolean check= false;
|
||||
private String yinsi1="登录即代表同意《肝胆相照隐私政策》和《肝胆相照用户服务协议》";
|
||||
public FullPortConfig(Activity activity, UMVerifyHelper authHelper) {
|
||||
super(activity, authHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configAuthPage() {
|
||||
mAuthHelper.setUIClickListener(new UMAuthUIControlClickListener() {
|
||||
@Override
|
||||
public void onClick(String code, Context context, String jsonString) {
|
||||
Log.e(TAG, "jsonString "+jsonString);
|
||||
try {
|
||||
JSONObject jsonObj = new JSONObject(jsonString);
|
||||
switch (code) {
|
||||
//点击授权页默认样式的返回按钮
|
||||
case UMResultCode.CODE_ERROR_USER_CANCEL:
|
||||
Log.e(TAG, "点击了授权页默认返回按钮");
|
||||
mAuthHelper.quitLoginPage();
|
||||
mActivity.finish();
|
||||
break;
|
||||
//点击授权页默认样式的切换其他登录方式 会关闭授权页
|
||||
//如果不希望关闭授权页那就setSwitchAccHidden(true)隐藏默认的 通过自定义view添加自己的
|
||||
case UMResultCode.CODE_ERROR_USER_SWITCH:
|
||||
Log.e(TAG, "点击了授权页默认切换其他登录方式");
|
||||
break;
|
||||
//点击一键登录按钮会发出此回调
|
||||
//当协议栏没有勾选时 点击按钮会有默认toast 如果不需要或者希望自定义内容 setLogBtnToastHidden(true)隐藏默认Toast
|
||||
//通过此回调自己设置toast
|
||||
case UMResultCode.CODE_ERROR_USER_LOGIN_BTN:
|
||||
if (!jsonObj.getBoolean("isChecked")) {
|
||||
// LayoutInflater inflater = LayoutInflater.from(mActivity);
|
||||
//// View layout = inflater.inflate(R.layout.dialog_new_notitle,(ViewGroup) mActivity.findViewById(android.R.id.content));
|
||||
// View layout = inflater.inflate(R.layout.dialog_new_notitle,(ViewGroup) ((ViewGroup) mActivity
|
||||
// .findViewById(android.R.id.content)).getChildAt(0));
|
||||
// RelativeLayout re=layout.findViewById(R.id.re);
|
||||
// re.setBackgroundColor(Color.parseColor("#80000000"));
|
||||
// Button btn_sure = (Button) layout.findViewById(R.id.btn_sure);
|
||||
// Button btn_cancel = (Button) layout.findViewById(R.id.btn_cancel);
|
||||
// TextView tv_tishi=layout.findViewById(R.id.tv_tishi);
|
||||
// SpannableStringBuilder spannableBuilder = new SpannableStringBuilder(yinsi1);
|
||||
// ForegroundColorSpan colorSpan = new ForegroundColorSpan(Color.parseColor("#8B2316"));
|
||||
// ForegroundColorSpan colorSpan1 = new ForegroundColorSpan(Color.parseColor("#8B2316"));
|
||||
// spannableBuilder.setSpan(colorSpan1, 7, 17, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE );
|
||||
// spannableBuilder.setSpan(colorSpan, 18, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
// ClickableSpan clickableSpanOne = new ClickableSpan() {
|
||||
// @Override
|
||||
// public void onClick(View view) {
|
||||
// Intent intent = new Intent(mActivity,
|
||||
// NewsDetailActivity.class);
|
||||
// intent.putExtra("url", Url.getyyzc);
|
||||
// intent.putExtra("title", "《肝胆相照隐私政策》");
|
||||
// mActivity.startActivity(intent);
|
||||
// }
|
||||
// @Override
|
||||
// public void updateDrawState(TextPaint ds) {
|
||||
// //点击事件去掉下划线
|
||||
// ds.setUnderlineText(false);
|
||||
// }
|
||||
//
|
||||
// };
|
||||
// ClickableSpan clickableSpanOne1 = new ClickableSpan() {
|
||||
// @Override
|
||||
// public void onClick(View view) {
|
||||
// Intent intent = new Intent(mActivity,
|
||||
// NewsDetailActivity.class);
|
||||
// intent.putExtra("url", Url.getzcxy);
|
||||
// intent.putExtra("title", "《肝胆相照用户服务协议》");
|
||||
// mActivity.startActivity(intent);
|
||||
// }
|
||||
// @Override
|
||||
// public void updateDrawState(TextPaint ds) {
|
||||
// //点击事件去掉下划线
|
||||
// ds.setUnderlineText(false);
|
||||
// }
|
||||
//
|
||||
// };
|
||||
// spannableBuilder.setSpan(clickableSpanOne, 7, 17, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
// spannableBuilder.setSpan(clickableSpanOne1, 18, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
// tv_tishi.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
// tv_tishi.setText(spannableBuilder);
|
||||
// tv_tishi.setGravity(Gravity.LEFT);
|
||||
//
|
||||
// btn_cancel.setOnClickListener(new View.OnClickListener() {
|
||||
// @Override
|
||||
// public void onClick(View v) {
|
||||
// // TODO Auto-generated method stub
|
||||
// ((ViewGroup)v.getRootView()).removeView(re);
|
||||
//
|
||||
// }
|
||||
// });
|
||||
// btn_sure.setOnClickListener(new View.OnClickListener() {
|
||||
// @Override
|
||||
// public void onClick(View v) {
|
||||
//
|
||||
// ((LoginNewActivity) mActivity).wechatLogin();
|
||||
// }
|
||||
// });
|
||||
// Toast.makeText(mContext, R.string.custom_toast, Toast.LENGTH_SHORT).show();
|
||||
|
||||
}
|
||||
break;
|
||||
//checkbox状态改变触发此回调
|
||||
case UMResultCode.CODE_ERROR_USER_CHECKBOX:
|
||||
check=jsonObj.getBoolean("isChecked");
|
||||
// Log.e(TAG, "checkbox状态变为" + jsonObj.getBoolean("isChecked"));
|
||||
break;
|
||||
//点击协议栏触发此回调
|
||||
case UMResultCode.CODE_ERROR_USER_PROTOCOL_CONTROL:
|
||||
// Log.e(TAG, "点击协议," + "name: " + jsonObj.getString("name") + ", url: " + jsonObj.getString("url"));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
mAuthHelper.removeAuthRegisterXmlConfig();
|
||||
mAuthHelper.removeAuthRegisterViewConfig();
|
||||
//添加自定义切换其他登录方式
|
||||
mAuthHelper.addAuthRegistViewConfig("switch_msg", new UMAuthRegisterViewConfig.Builder()
|
||||
.setView(initSwitchView(287,"短信验证码登录",false))
|
||||
.setRootViewId(UMAuthRegisterViewConfig.RootViewId.ROOT_VIEW_ID_BODY)
|
||||
.setCustomInterface(new UMCustomInterface() {
|
||||
@Override
|
||||
public void onClick(Context context) {
|
||||
// Toast.makeText(mContext, "切换到短信登录方式", Toast.LENGTH_SHORT).show();
|
||||
// Intent pIntent = new Intent(mActivity, LoginNewActivity.class);
|
||||
// mActivity.startActivityForResult(pIntent, 1002);
|
||||
|
||||
mAuthHelper.quitLoginPage();
|
||||
}
|
||||
}).build());
|
||||
|
||||
mAuthHelper.addAuthRegisterXmlConfig(new UMAuthRegisterXmlConfig.Builder()
|
||||
.setLayout(R.layout.custom_login, new UMAbstractPnsViewDelegate() {
|
||||
@Override
|
||||
public void onViewCreated(View view) {
|
||||
|
||||
// inflater.inflate(R.layout.dialog_new_notitle, (ViewGroup) view.getRootView());
|
||||
|
||||
findViewById(R.id.im_wechat).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
// Log.e(TAG, "点击了we");
|
||||
if(!check)
|
||||
{
|
||||
if(mActivity instanceof LoginNewActivity)
|
||||
{
|
||||
LayoutInflater inflater = LayoutInflater.from(mActivity);
|
||||
View layout = inflater.inflate(R.layout.dialog_new_notitle,(ViewGroup) v.getRootView());
|
||||
RelativeLayout re=layout.findViewById(R.id.re);
|
||||
re.setBackgroundColor(Color.parseColor("#80000000"));
|
||||
Button btn_sure = (Button) layout.findViewById(R.id.btn_sure);
|
||||
Button btn_cancel = (Button) layout.findViewById(R.id.btn_cancel);
|
||||
TextView tv_tishi=layout.findViewById(R.id.tv_tishi);
|
||||
SpannableStringBuilder spannableBuilder = new SpannableStringBuilder(yinsi1);
|
||||
ForegroundColorSpan colorSpan = new ForegroundColorSpan(Color.parseColor("#8B2316"));
|
||||
ForegroundColorSpan colorSpan1 = new ForegroundColorSpan(Color.parseColor("#8B2316"));
|
||||
spannableBuilder.setSpan(colorSpan1, 7, 17, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE );
|
||||
spannableBuilder.setSpan(colorSpan, 18, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
ClickableSpan clickableSpanOne = new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(mActivity,
|
||||
NewsDetailActivity.class);
|
||||
intent.putExtra("url", Url.getyyzc);
|
||||
intent.putExtra("title", "《肝胆相照隐私政策》");
|
||||
mActivity.startActivity(intent);
|
||||
}
|
||||
@Override
|
||||
public void updateDrawState(TextPaint ds) {
|
||||
//点击事件去掉下划线
|
||||
ds.setUnderlineText(false);
|
||||
}
|
||||
|
||||
};
|
||||
ClickableSpan clickableSpanOne1 = new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(mActivity,
|
||||
NewsDetailActivity.class);
|
||||
intent.putExtra("url", Url.getzcxy);
|
||||
intent.putExtra("title", "《肝胆相照用户服务协议》");
|
||||
mActivity.startActivity(intent);
|
||||
}
|
||||
@Override
|
||||
public void updateDrawState(TextPaint ds) {
|
||||
//点击事件去掉下划线
|
||||
ds.setUnderlineText(false);
|
||||
}
|
||||
|
||||
};
|
||||
spannableBuilder.setSpan(clickableSpanOne, 7, 17, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
spannableBuilder.setSpan(clickableSpanOne1, 18, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
tv_tishi.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
tv_tishi.setText(spannableBuilder);
|
||||
tv_tishi.setGravity(Gravity.LEFT);
|
||||
|
||||
btn_cancel.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
// TODO Auto-generated method stub
|
||||
((ViewGroup)v.getRootView()).removeView(re);
|
||||
|
||||
}
|
||||
});
|
||||
btn_sure.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
((LoginNewActivity) mActivity).wechatLogin();
|
||||
}
|
||||
});
|
||||
|
||||
// ((LoginNewActivity) mActivity).show_yinsi(true);
|
||||
|
||||
}
|
||||
// Toast.makeText(mContext, R.string.custom_toast, Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
else
|
||||
{
|
||||
// mAuthHelper.quitLoginPage();
|
||||
|
||||
if(mActivity instanceof LoginNewActivity)
|
||||
{
|
||||
|
||||
((LoginNewActivity) mActivity).wechatLogin();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// ImageView pImageView = (ImageView) findViewById(R.id.iv_background);
|
||||
// Glide.with(mContext).load(R.drawable.test).diskCacheStrategy(DiskCacheStrategy.RESOURCE).into(pImageView);
|
||||
//
|
||||
// findViewById(R.id.tv_switch).setOnClickListener(new View.OnClickListener() {
|
||||
// @Override
|
||||
// public void onClick(View v) {
|
||||
// Toast.makeText(mContext, "切换到短信登录方式", Toast.LENGTH_SHORT).show();
|
||||
// Intent pIntent = new Intent(mActivity, MessageActivity.class);
|
||||
// mActivity.startActivityForResult(pIntent, 1002);
|
||||
// mAuthHelper.quitLoginPage();
|
||||
// }
|
||||
// });
|
||||
}
|
||||
})
|
||||
.build());
|
||||
|
||||
int authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT;
|
||||
if (Build.VERSION.SDK_INT == 26) {
|
||||
authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_BEHIND;
|
||||
}
|
||||
|
||||
// Resources resources =mContext.getResources();
|
||||
mAuthHelper.setAuthUIConfig(new UMAuthUIConfig.Builder()
|
||||
//loding
|
||||
.setPrivacyAlertIsNeedShow(true)
|
||||
.setPrivacyAlertIsNeedAutoLogin(true)
|
||||
.setTapPrivacyAlertMaskCloseAlert(false)
|
||||
.setPrivacyAlertAlignment(Gravity.CENTER)
|
||||
.setPrivacyAlertBackgroundColor(Color.WHITE)
|
||||
.setPrivacyAlertMaskAlpha(0.3f)
|
||||
.setPrivacyAlertWidth(300)
|
||||
.setPrivacyAlertHeight(250)
|
||||
.setPrivacyAlertCornerRadiusArray(new int[]{10, 10, 10, 10})
|
||||
.setPrivacyAlertTitleTextSize(17)
|
||||
.setPrivacyAlertTitleColor(Color.BLACK)
|
||||
.setPrivacyAlertContentTextSize(15)
|
||||
.setPrivacyAlertContentColor(Color.parseColor("#8D2316"))
|
||||
.setPrivacyAlertContentBaseColor(Color.parseColor("#666666"))
|
||||
.setPrivacyAlertContentHorizontalMargin(40)
|
||||
.setPrivacyAlertContentVerticalMargin(20)
|
||||
.setPrivacyAlertBtnTextColor(Color.WHITE)
|
||||
.setPrivacyAlertBtnWidth(90)
|
||||
.setPrivacyAlertBtnHeight(44)
|
||||
.setPrivacyAlertBtnTextSize(15)
|
||||
.setPrivacyAlertBtnBackgroundImgDrawable(mContext.getResources().getDrawable(R.drawable.selector_btn))
|
||||
.setPrivacyAlertEntryAnimation("in_activity")
|
||||
.setPrivacyAlertExitAnimation("out_activity")
|
||||
|
||||
.setLoadingImgDrawable(mContext.getResources().getDrawable(R.drawable.refresh_anim))
|
||||
.setLoadingBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.icon_custom_toast_bg))
|
||||
//隐私政策
|
||||
.setAppPrivacyOne("《肝胆相照隐私政策》", Url.getyyzc)
|
||||
.setAppPrivacyTwo("《肝胆相照用户服务协议》", Url.getzcxy)
|
||||
.setPrivacyTextSize(12)
|
||||
.setPrivacyOffsetY_B(15)
|
||||
.setPrivacyEnd("并使用本机号码登录并注册")
|
||||
.setAppPrivacyColor(Color.parseColor("#666666"),Color.parseColor("#8D2316"))
|
||||
.setUncheckedImgPath("login_new_unselect")
|
||||
.setCheckedImgPath("login_new_select")
|
||||
.setPrivacyMargin(15)
|
||||
.setProtocolGravity(Gravity.LEFT)
|
||||
.setProtocolLayoutGravity(Gravity.LEFT)
|
||||
//协议网页
|
||||
.setWebViewStatusBarColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setWebNavColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setWebNavTextColor(Color.parseColor("#8D2316"))
|
||||
.setWebNavTextSize(20)
|
||||
.setWebSupportedJavascript(true)
|
||||
//隐藏默认切换其他登录方式
|
||||
.setSwitchAccHidden(true)
|
||||
//隐藏默认Toast
|
||||
.setLogBtnToastHidden(true)
|
||||
//沉浸式状态栏
|
||||
.setStatusBarColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setStatusBarHidden(false)
|
||||
.setStatusBarUIFlag(View.SYSTEM_UI_FLAG_LOW_PROFILE)
|
||||
.setLightColor(true)
|
||||
//导航栏
|
||||
.setNavColor(Color.parseColor("#FFEFEFEF"))
|
||||
.setNavText("登录")
|
||||
.setNavTextColor(Color.parseColor("#8D2316"))
|
||||
.setNavTextSize(20)
|
||||
.setNavReturnImgPath("top_back")
|
||||
.setNavReturnHidden(true)
|
||||
.setNavReturnImgWidth(40)
|
||||
.setNavReturnImgHeight(40)
|
||||
.setNavReturnScaleType(ImageView.ScaleType.CENTER)
|
||||
//logo
|
||||
.setLogoImgDrawable(mContext.getResources().getDrawable(R.drawable.icon_login_logo))
|
||||
.setLogoHidden(false)
|
||||
.setLogoHeight(68)
|
||||
.setLogoWidth(68)
|
||||
.setLogoOffsetY(48)
|
||||
.setSloganText("专家端")
|
||||
.setSloganTextSize(16)
|
||||
.setSloganTextColor(Color.parseColor("#8D2316"))
|
||||
.setSloganOffsetY(126)
|
||||
//号码
|
||||
.setNumberColor(Color.parseColor("#000000"))
|
||||
.setNumberSize(17)
|
||||
.setNumFieldOffsetY(160)
|
||||
//登录
|
||||
.setLogBtnText("本机号码一键登录")
|
||||
.setLogBtnTextColor(Color.parseColor("#FFFFFF"))
|
||||
.setLogBtnTextSize(17)
|
||||
.setLogBtnMarginLeftAndRight(20)
|
||||
.setLogBtnBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.selector_btn))
|
||||
.setLogBtnHeight(39)
|
||||
.setLogBtnOffsetY(238)
|
||||
// //短信验证码登录
|
||||
// .setSwitchAccHidden(false)
|
||||
// .setSwitchAccText("短信验证码登录")
|
||||
// .setSwitchAccTextColor(Color.parseColor("#8D2316"))
|
||||
// .setSwitchAccTextSize(14)
|
||||
|
||||
//图片或者xml的传参方式为不包含后缀名的全称 需要文件需要放在drawable或drawable-xxx目录下 in_activity.xml, mytel_app_launcher.png
|
||||
.setAuthPageActIn("in_activity", "out_activity")
|
||||
.setAuthPageActOut("in_activity", "out_activity")
|
||||
.setVendorPrivacyPrefix("《")
|
||||
.setVendorPrivacySuffix("》")
|
||||
|
||||
// .setPageBackgroundPath("page_background_color")
|
||||
// .setLogoImgPath("mytel_app_launcher")
|
||||
//一键登录按钮三种状态背景示例login_btn_bg.xml
|
||||
// .setLogBtnBackgroundPath("login_btn_bg")
|
||||
.setScreenOrientation(authPageOrientation)
|
||||
.create());
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,316 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
|
||||
import static cn.shangyu.gdxzExpert.umeng.PushHelper.readMessage;
|
||||
import static cn.shangyu.gdxzExpert.utils.CommonUtil.BigModule;
|
||||
import static cn.shangyu.gdxzExpert.utils.StaUtil.EXPERT_PUSH_CLASS_QUALITY_DETAILS;
|
||||
import static cn.shangyu.gdxzExpert.utils.StaUtil.EXPERT_PUSH_COURSEWARE_DETAILS;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.netease.nim.uikit.common.util.log.LogUtil;
|
||||
import com.netease.nimlib.sdk.NIMClient;
|
||||
import com.netease.nimlib.sdk.NimIntent;
|
||||
import com.netease.nimlib.sdk.mixpush.MixPushService;
|
||||
import com.netease.nimlib.sdk.msg.MessageBuilder;
|
||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||
import com.umeng.analytics.MobclickAgent;
|
||||
import com.umeng.message.UmengNotifyClickActivity;
|
||||
|
||||
import org.android.agoo.common.AgooConstants;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
import cn.shangyu.gdxzExpert.activity.AccumulatePointsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BillDetailsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BookshelfListActivity2;
|
||||
import cn.shangyu.gdxzExpert.activity.FaPiaoActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.GanDanHouseDetialActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyCoursewareActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFlowerActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFuliCardActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.WebActivity;
|
||||
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.VideoDetailPolyvPlayerActivity;
|
||||
import cn.shangyu.gdxzExpert.splash.WelcomeUI;
|
||||
import cn.shangyu.gdxzExpert.utils.GsonTools;
|
||||
import cn.shangyu.gdxzExpert.utils.StringUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
|
||||
/**
|
||||
* 厂商通道配置托管启动的Activity
|
||||
* 如点击小米、华为、OPPO、vivo等系统通道的通知消息,启动的Activity类
|
||||
*/
|
||||
public class MfrMessageActivity extends UmengNotifyClickActivity {
|
||||
|
||||
private static final String TAG = "MfrMessageActivity";
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle bundle) {
|
||||
super.onCreate(bundle);
|
||||
setContentView(R.layout.mfr_message_layout);
|
||||
// onIntent();
|
||||
}
|
||||
// 处理收到的Intent
|
||||
private void onIntent() {
|
||||
LogUtil.i(TAG, "onIntent...");
|
||||
LogUtil.i("G2", "onIntent...");
|
||||
|
||||
|
||||
// 已经登录过了,处理过来的请求
|
||||
Intent intent = getIntent();
|
||||
if (intent != null) {
|
||||
if(intent.getExtras()!=null)
|
||||
{
|
||||
Log.d(TAG, "intent.getExtras(): " + intent.getExtras().toString());
|
||||
}
|
||||
if (intent.hasExtra(NimIntent.EXTRA_NOTIFY_CONTENT)) {
|
||||
parseNotifyIntent(intent);
|
||||
return;
|
||||
} else if (NIMClient.getService(MixPushService.class).isFCMIntent(intent)) {
|
||||
parseFCMNotifyIntent(NIMClient.getService(MixPushService.class).parseFCMPayload(intent));
|
||||
}
|
||||
}
|
||||
}
|
||||
private void parseFCMNotifyIntent(String payloadString) {
|
||||
Map<String, String> payload = JSON.parseObject(payloadString, Map.class);
|
||||
String sessionId = payload.get(DemoMixPushMessageHandler.PAYLOAD_SESSION_ID);
|
||||
String type = payload.get(DemoMixPushMessageHandler.PAYLOAD_SESSION_TYPE);
|
||||
if (sessionId != null && type != null) {
|
||||
int typeValue = Integer.valueOf(type);
|
||||
IMMessage message = MessageBuilder.createEmptyMessage(sessionId, SessionTypeEnum.typeOfValue(typeValue), 0);
|
||||
// showMainActivity(new Intent().putExtra(NimIntent.EXTRA_NOTIFY_CONTENT, message));
|
||||
} else {
|
||||
// showMainActivity(null);
|
||||
}
|
||||
}
|
||||
private void parseNotifyIntent(Intent intent) {
|
||||
ArrayList<IMMessage> messages = (ArrayList<IMMessage>) intent.getSerializableExtra(NimIntent.EXTRA_NOTIFY_CONTENT);
|
||||
if (messages == null || messages.size() > 1) {
|
||||
// showMainActivity(null);
|
||||
} else {
|
||||
// showMainActivity(new Intent().putExtra(NimIntent.EXTRA_NOTIFY_CONTENT, messages.get(0)));
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public void onMessage(Intent intent) {
|
||||
|
||||
if(intent==null)
|
||||
return;
|
||||
Bundle bundle = intent.getExtras();
|
||||
if (bundle != null) {
|
||||
Log.d(TAG, "bundle: " + bundle);
|
||||
}
|
||||
else
|
||||
{
|
||||
return;
|
||||
}
|
||||
super.onMessage(intent);
|
||||
final String body = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
|
||||
try {
|
||||
|
||||
JSONObject jsonObject = new JSONObject(body);
|
||||
PushBean pushBean= GsonTools.fromGsonToBean(body,PushBean.class);
|
||||
if(pushBean!=null&&pushBean.getExtra()!=null&& !StringUtil.isEmpty(pushBean.getExtra().getMessage_id()))
|
||||
{
|
||||
readMessage(pushBean.getExtra().getMessage_id());
|
||||
}
|
||||
if(pushBean!=null&&pushBean.getExtra()!=null&&pushBean.getExtra().getType()!=null)
|
||||
{
|
||||
Intent intent3=new Intent();
|
||||
|
||||
switch (pushBean.getExtra().getType())
|
||||
{
|
||||
case "1":
|
||||
intent3.setClass(getContext(),PushNewsDetailActivity.class);
|
||||
intent3.putExtra("title", "新闻详情");
|
||||
intent3.putExtra("newsuuid", pushBean.getExtra().getUuid());
|
||||
intent3.putExtra("flag", 3);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"3"://肝胆视频
|
||||
Intent intent4 = VideoDetailPolyvPlayerActivity.newIntent(getContext(), VideoDetailPolyvPlayerActivity.PlayMode.portrait,"");
|
||||
// 在线视频和下载的视频播放的时候只显示播放器窗口,用该参数来控制
|
||||
intent4.putExtra("startNow", false);
|
||||
intent4.putExtra("isVlmsOnline", false);
|
||||
intent4.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent4.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent4);
|
||||
finish();
|
||||
break;
|
||||
case"4"://直播
|
||||
intent3.setType("zhibo");
|
||||
intent3.setClass(getContext(),PushZhiBoActivity.class);
|
||||
intent3.putExtra("id", pushBean.getExtra().getId());
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"5"://肝胆课件
|
||||
MobclickAgent.onEvent(getContext(),EXPERT_PUSH_COURSEWARE_DETAILS);
|
||||
intent3.setClass(getContext(),PushCourseUrlDetailActivity.class);
|
||||
intent3.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"6"://精品课
|
||||
case"7":
|
||||
MobclickAgent.onEvent(getContext(),EXPERT_PUSH_CLASS_QUALITY_DETAILS);
|
||||
intent3.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
intent3.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"9"://积分商城
|
||||
if(BigModule())
|
||||
{
|
||||
intent3.setClass(getContext(), BigPointsMallActivity.class);
|
||||
}
|
||||
else
|
||||
{
|
||||
intent3.setClass(getContext(), PointsMallActivity.class);
|
||||
}
|
||||
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"10"://指南
|
||||
intent3.setClass(getContext(), BookshelfListActivity2.class);
|
||||
intent3.putExtra("typeUuid", pushBean.getExtra().getUuid());
|
||||
intent3.putExtra("title", pushBean.getExtra().getName());
|
||||
intent3.putExtra("loadUrl", Url.getGuideList);
|
||||
intent3.putExtra("type", "0");
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"11"://普通url
|
||||
intent3.setClass(getContext(), WebActivity.class);
|
||||
intent3.putExtra("url",pushBean.getExtra().getUrl());
|
||||
intent3.putExtra("title","推送消息");
|
||||
intent3.putExtra("need_share","0");
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"15"://精品课评论
|
||||
// intent3.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
// intent3.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
// intent3.putExtra("pinglun","yes");
|
||||
// intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// getContext().startActivity(intent3);
|
||||
// finish();
|
||||
// break;
|
||||
case"16"://一问多答
|
||||
case"17"://病例讨论
|
||||
intent3.setClass(getContext(), NewSystemMessageActivity.class);
|
||||
intent3.putExtra("module",3);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"18"://送花
|
||||
intent3.setClass(getContext(), MyFlowerActivity.class);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"19"://课件收益
|
||||
intent.setClass(getContext(), MyCoursewareActivity.class);
|
||||
intent.putExtra("changeMyCoolect",1);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"21"://提现
|
||||
intent3.setClass(getContext(), BillDetailsActivity.class);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"20"://发票
|
||||
intent3.setClass(getContext(), FaPiaoActivity.class);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"28"://课件分享
|
||||
case"30"://精品课优质评价
|
||||
case"31"://学完返现
|
||||
case"32"://福利课堂
|
||||
case"33"://阅读福利
|
||||
case"34"://观看福利
|
||||
case"36"://特别奖励
|
||||
intent3.setClass(getContext(), AccumulatePointsActivity.class);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case"35"://福利卡
|
||||
intent3.setClass(getContext(), MyFuliCardActivity.class);
|
||||
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
case "40"://互动圈
|
||||
intent.setClass(getContext(), GanDanHouseDetialActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
intent.putExtra("uuid",pushBean.getExtra().getUuid());
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
default:
|
||||
intent3.setClass(MfrMessageActivity.this, WelcomeUI.class);
|
||||
startActivity(intent3);
|
||||
finish();
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
else if(jsonObject.optJSONObject("extra")!=null&&!(jsonObject.getJSONObject("extra").isNull("url")))
|
||||
{
|
||||
Intent intent2=new Intent(getContext(), WebActivity.class);
|
||||
intent2.putExtra("url",jsonObject.getJSONObject("extra").getString("url"));
|
||||
intent2.putExtra("title","推送消息");
|
||||
intent2.putExtra("need_share","0");
|
||||
intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent2);
|
||||
finish();
|
||||
}
|
||||
else
|
||||
{
|
||||
Intent intent1 = new Intent();
|
||||
intent1.setClass(MfrMessageActivity.this, WelcomeUI.class);
|
||||
startActivity(intent1);
|
||||
finish();
|
||||
}
|
||||
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// Log.d(TAG, "body: " + body);
|
||||
// if (!TextUtils.isEmpty(body)) {
|
||||
// runOnUiThread(new Runnable() {
|
||||
// @Override
|
||||
// public void run() {
|
||||
// ((TextView) findViewById(R.id.tv)).setText(body);
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,624 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
|
||||
import static cn.shangyu.gdxzExpert.umeng.PushHelper.readMessage;
|
||||
import static cn.shangyu.gdxzExpert.utils.CommonUtil.BigModule;
|
||||
import static cn.shangyu.gdxzExpert.utils.Url.appMesageRead;
|
||||
import static cn.shangyu.gdxzExpert.utils.Url.unReadList;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Color;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.Button;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
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.activity.AccumulatePointsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BillDetailsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BookshelfListActivity2;
|
||||
import cn.shangyu.gdxzExpert.activity.CaseCussionDetailActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.FaPiaoActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.GanDanHouseDetialActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyCoursewareActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFlowerActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFuliCardActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.WebActivity;
|
||||
import cn.shangyu.gdxzExpert.base.BaseActivity;
|
||||
import cn.shangyu.gdxzExpert.bean.MessageBean;
|
||||
import cn.shangyu.gdxzExpert.bean.MessageNumBean;
|
||||
import cn.shangyu.gdxzExpert.big.activity.BigPointsMallActivity;
|
||||
import cn.shangyu.gdxzExpert.big.activity.NormNewPatientActivity;
|
||||
import cn.shangyu.gdxzExpert.fragment.FuMessageFragment;
|
||||
import cn.shangyu.gdxzExpert.fragment.HuiMessageFragment;
|
||||
import cn.shangyu.gdxzExpert.fragment.OrderMessageFragment;
|
||||
import cn.shangyu.gdxzExpert.fragment.SuiMessageFragment;
|
||||
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
|
||||
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.StringUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.ToastUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
import cn.shangyu.gdxzExpert.widget.LoadingPage;
|
||||
import me.majiajie.pagerbottomtabstrip.NavigationController;
|
||||
import me.majiajie.pagerbottomtabstrip.OldPageNavigationView;
|
||||
import me.majiajie.pagerbottomtabstrip.item.BaseTabItem;
|
||||
import me.majiajie.pagerbottomtabstrip.item.NormalItemView;
|
||||
import me.majiajie.pagerbottomtabstrip.listener.SimpleTabItemSelectedListener;
|
||||
|
||||
public class NewSystemMessageActivity extends BaseActivity implements OnCallBackFromNet {
|
||||
|
||||
private OldPageNavigationView tab;
|
||||
|
||||
// @Override
|
||||
// protected void onCreate(Bundle savedInstanceState) {
|
||||
// super.onCreate(savedInstanceState);
|
||||
// setContentView(R.layout.activity_new_system_message);
|
||||
// }
|
||||
public static final String fragmentTag1 = "fragment1";
|
||||
public static final String fragmentTag2 = "fragment2";
|
||||
public static final String fragmentTag3 = "fragment3";
|
||||
public static final String fragmentTag4 = "fragment4";
|
||||
private Fragment currentFragment;
|
||||
private FragmentManager manager;
|
||||
private FuMessageFragment fuMessageFragment;
|
||||
private OrderMessageFragment orderMessageFragment;
|
||||
private SuiMessageFragment suiMessageFragment;
|
||||
private HuiMessageFragment huiMessageFragment;
|
||||
NavigationController navigationController;
|
||||
private int num0=0,num1=0,num2=0,num3=0;
|
||||
public Boolean needrequest=false;//是否需要重新请求
|
||||
|
||||
public int unreadnum=0;
|
||||
@Override
|
||||
public void setTitle() {
|
||||
top_title.setText("消息");
|
||||
top_right.setImageResource(R.drawable.clear_message);
|
||||
top_right.setVisibility(View.VISIBLE);
|
||||
top_right.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
clearMessage();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void clearMessage()
|
||||
{
|
||||
|
||||
LayoutInflater inflater = LayoutInflater.from(this);
|
||||
RelativeLayout layout = (RelativeLayout) inflater.inflate(R.layout.dialog_new, null);
|
||||
AlertDialog dialog3 = new AlertDialog.Builder(
|
||||
NewSystemMessageActivity.this,AlertDialog.THEME_HOLO_LIGHT).create();
|
||||
|
||||
Button btn_sure = (Button) layout.findViewById(R.id.btn_sure);
|
||||
Button btn_cancel = (Button) layout.findViewById(R.id.btn_cancel);
|
||||
RelativeLayout r_b =layout.findViewById(R.id.r_b);
|
||||
TextView tv_tishi=layout.findViewById(R.id.tv_tishi);
|
||||
|
||||
if(unreadnum>0)
|
||||
{
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
r_b.setVisibility(View.GONE);
|
||||
btn_sure.setText("确定");
|
||||
tv_tishi.setText("您没有可清除的未读消息");
|
||||
// btn_cancel.setVisibility(View.GONE);
|
||||
// btn_sure.setWidth(dip2px(105));
|
||||
}
|
||||
dialog3.show();
|
||||
Window window =dialog3.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);
|
||||
dialog3.getWindow().setContentView(layout);
|
||||
dialog3.setCanceledOnTouchOutside(false);
|
||||
btn_cancel.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
// TODO Auto-generated method stub
|
||||
dialog3.dismiss();
|
||||
|
||||
}
|
||||
});
|
||||
btn_sure.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if(unreadnum>0){
|
||||
needrequest=true;
|
||||
|
||||
showLoadingProgress();
|
||||
clearMsg("");
|
||||
needreportSimple("clear_message");
|
||||
}
|
||||
|
||||
dialog3.dismiss();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public View onCreateSuccessedView() {
|
||||
View view = View.inflate(ct, R.layout.activity_new_system_message, null);
|
||||
tab= view.findViewById(R.id.tab);
|
||||
|
||||
//注意这里调用了custom()方法
|
||||
navigationController = tab.custom()
|
||||
.addItem(newItem(R.drawable.fu_message,R.drawable.fu_message,"福利"))
|
||||
.addItem(newItem(R.drawable.ding_message,R.drawable.ding_message,"订单"))
|
||||
.addItem(newItem(R.drawable.sui_message,R.drawable.sui_message,"随访"))
|
||||
.addItem(newItem(R.drawable.hui_message,R.drawable.hui_message,"回复我的"))
|
||||
.build();
|
||||
|
||||
navigationController.addSimpleTabItemSelectedListener(new SimpleTabItemSelectedListener() {
|
||||
@Override
|
||||
public void onSelected(int index, int old) {
|
||||
// 选中时触发
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
showFragment(fuMessageFragment);
|
||||
break;
|
||||
case 1:
|
||||
showFragment(orderMessageFragment);
|
||||
|
||||
break;
|
||||
case 2:
|
||||
showFragment(suiMessageFragment);
|
||||
|
||||
break;
|
||||
case 3:
|
||||
showFragment(huiMessageFragment);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
if(!StringUtil.isEmpty(getIntent().getStringExtra("message_id")))
|
||||
{
|
||||
readMessage(getIntent().getStringExtra("message_id"));
|
||||
}
|
||||
// showLoadingProgress();
|
||||
initMessage();
|
||||
initFragment();
|
||||
if(getIntent().getIntExtra("module",0)==0)
|
||||
{
|
||||
showFragment(fuMessageFragment);
|
||||
}
|
||||
else
|
||||
{
|
||||
navigationController.setSelect(getIntent().getIntExtra("module",0));
|
||||
}
|
||||
|
||||
// showFragment(fuMessageFragment);
|
||||
return view;
|
||||
}
|
||||
public void initMessage()
|
||||
{
|
||||
Map<String,String> map=new HashMap<>();
|
||||
sendJsonPostParamtoNetSignMD5(unReadList,map,101,this);
|
||||
}
|
||||
private void clearMsg(String id)
|
||||
{
|
||||
|
||||
Map<String,String> map=new HashMap<>();
|
||||
map.put("id",id);
|
||||
sendJsonPostParamtoNetSignMD5(appMesageRead,map,102,this);
|
||||
}
|
||||
/**
|
||||
71 * 展示Fragment
|
||||
72 */
|
||||
private void showFragment(Fragment fragment) {
|
||||
if (currentFragment != fragment) {
|
||||
FragmentTransaction transaction = manager.beginTransaction();
|
||||
if(currentFragment!=null)
|
||||
{
|
||||
transaction.hide(currentFragment);
|
||||
}
|
||||
|
||||
currentFragment = fragment;
|
||||
if (!fragment.isAdded()) {
|
||||
transaction.add(R.id.frame_container, fragment).show(fragment).commit();
|
||||
} else {
|
||||
transaction.show(fragment).commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
private void initFragment()
|
||||
{
|
||||
manager = getSupportFragmentManager();
|
||||
//实例化碎片对象
|
||||
fuMessageFragment = new FuMessageFragment();
|
||||
orderMessageFragment = new OrderMessageFragment();
|
||||
suiMessageFragment = new SuiMessageFragment();
|
||||
huiMessageFragment=new HuiMessageFragment();
|
||||
|
||||
|
||||
}
|
||||
//创建一个Item
|
||||
private BaseTabItem newItem(int drawable, int checkedDrawable, String text){
|
||||
NormalItemView normalItemView = new NormalItemView(this);
|
||||
normalItemView.initialize(drawable,checkedDrawable,text);
|
||||
normalItemView.setTextDefaultColor(Color.parseColor("#ff666666"));
|
||||
normalItemView.setTextCheckedColor(Color.parseColor("#ff8B2316"));
|
||||
// normalItemView.setMessageNumber(1);
|
||||
// normalItemView.setHasMessage(true);
|
||||
return normalItemView;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public LoadingPage.ResultState onLoad() {
|
||||
return LoadingPage.ResultState.STATE_SUCCESSED;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void processClick(View v) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCallbackFromThread(String resultJson) {
|
||||
|
||||
}
|
||||
public void reInitMessage()
|
||||
{
|
||||
initMessage();
|
||||
// if(fuMessageFragment.isAdded())
|
||||
// {
|
||||
// fuMessageFragment. initMessage("1",fuMessageFragment .page+"");
|
||||
// }
|
||||
// if(orderMessageFragment.isAdded())
|
||||
// {
|
||||
// orderMessageFragment. initMessage("2",orderMessageFragment.page+"");
|
||||
// }
|
||||
// if(suiMessageFragment.isAdded())
|
||||
// {
|
||||
// suiMessageFragment. initMessage("3",suiMessageFragment.page+"");
|
||||
// }
|
||||
// if(huiMessageFragment.isAdded())
|
||||
// {
|
||||
// huiMessageFragment. initMessage("4",huiMessageFragment.page+"");
|
||||
// }
|
||||
|
||||
if(currentFragment instanceof FuMessageFragment)
|
||||
{
|
||||
((FuMessageFragment) currentFragment). initMessage("1",((FuMessageFragment) currentFragment).page+"");
|
||||
}
|
||||
else if(currentFragment instanceof OrderMessageFragment)
|
||||
{
|
||||
((OrderMessageFragment) currentFragment). initMessage("2",((OrderMessageFragment) currentFragment).page+"");
|
||||
}
|
||||
else if(currentFragment instanceof SuiMessageFragment)
|
||||
{
|
||||
((SuiMessageFragment) currentFragment). initMessage("3",((SuiMessageFragment) currentFragment).page+"");
|
||||
}
|
||||
else if(currentFragment instanceof HuiMessageFragment)
|
||||
{
|
||||
((HuiMessageFragment) currentFragment). initMessage("4",((HuiMessageFragment) currentFragment).page+"");
|
||||
}
|
||||
}
|
||||
MessageNumBean messageNumBean;
|
||||
@Override
|
||||
public void onCallBackFromThread(String resultJson, int resultCode) {
|
||||
|
||||
switch (resultCode)
|
||||
{
|
||||
case 102:
|
||||
dismissLoadingProgress();
|
||||
try {
|
||||
JSONObject jsonObject=new JSONObject(resultJson);
|
||||
if("200".equals(jsonObject.optString("code")))
|
||||
{
|
||||
|
||||
if(needrequest)
|
||||
{
|
||||
needrequest=false;
|
||||
reInitMessage();
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ToastUtil.showMessage(jsonObject.optString("message"));
|
||||
}
|
||||
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
break;
|
||||
case 101:
|
||||
// dismissLoadingProgress();
|
||||
|
||||
messageNumBean= GsonTools.fromGsonToBean(resultJson,MessageNumBean.class);
|
||||
if("200".equals(messageNumBean.getCode()))
|
||||
{
|
||||
|
||||
if(messageNumBean.getData()!=null)
|
||||
{
|
||||
// setUnread(0,111+"");
|
||||
setUnread(0,messageNumBean.getData().getModule_Welfare());
|
||||
setUnread(1,messageNumBean.getData().getModule_Order());
|
||||
setUnread(2,messageNumBean.getData().getModule_Relation());
|
||||
setUnread(3,messageNumBean.getData().getModule_Comment());
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
public void setUnread(int index,String num)
|
||||
{
|
||||
unreadnum=0;
|
||||
if(!StringUtil.isEmpty(num)&&Integer.valueOf(num)>0)
|
||||
{
|
||||
navigationController.setMessageNumber(index,Integer.valueOf(num));
|
||||
navigationController.setHasMessage(index,true);
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
num0=Integer.valueOf(num);
|
||||
break;
|
||||
case 1:
|
||||
num1=Integer.valueOf(num);
|
||||
break;
|
||||
case 2:
|
||||
num2=Integer.valueOf(num);
|
||||
break;
|
||||
case 3:
|
||||
num3=Integer.valueOf(num);
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
navigationController.setMessageNumber(index,0);
|
||||
navigationController.setHasMessage(index,false);
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
num0=0;
|
||||
break;
|
||||
case 1:
|
||||
num1=0;
|
||||
break;
|
||||
case 2:
|
||||
num2=0;
|
||||
break;
|
||||
case 3:
|
||||
num3=0;
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
unreadnum=num0+num1+num2+num3;
|
||||
}
|
||||
|
||||
public void goActivity(String type, MessageBean.BeanData.DetailBean pushBean,int index)
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
if(num0>0)
|
||||
{
|
||||
clearMsg(pushBean.getId());
|
||||
num0--;
|
||||
setUnread(index,num0+"");
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if(num1>0)
|
||||
{
|
||||
clearMsg(pushBean.getId());
|
||||
num1--;
|
||||
setUnread(index,num1+"");
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if(num2>0)
|
||||
{
|
||||
clearMsg(pushBean.getId());
|
||||
num2--;
|
||||
setUnread(index,num2+"");
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if(num3>0)
|
||||
{
|
||||
clearMsg(pushBean.getId());
|
||||
num3--;
|
||||
setUnread(index,num3+"");
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
Intent intent=new Intent();
|
||||
Log.d("WXEntryActivity",type+" ");
|
||||
switch (type)
|
||||
{
|
||||
case "1"://新闻
|
||||
intent.setClass(getContext(),PushNewsDetailActivity.class);
|
||||
intent.putExtra("title", "新闻详情");
|
||||
intent.putExtra("newsuuid", pushBean.getExtra().getUuid());
|
||||
intent.putExtra("flag", 3);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"3"://肝胆视频
|
||||
Intent intent4 = VideoDetailPolyvPlayerActivity.newIntent(getContext(), VideoDetailPolyvPlayerActivity.PlayMode.portrait,"");
|
||||
// 在线视频和下载的视频播放的时候只显示播放器窗口,用该参数来控制
|
||||
intent4.putExtra("startNow", false);
|
||||
intent4.putExtra("isVlmsOnline", false);
|
||||
intent4.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent4.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent4);
|
||||
break;
|
||||
case"4"://直播
|
||||
intent.setType("zhibo");
|
||||
intent.setClass(getContext(),PushZhiBoActivity.class);
|
||||
intent.putExtra("id", pushBean.getExtra().getId());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"5"://肝胆课件
|
||||
intent.setClass(getContext(),PushCourseUrlDetailActivity.class);
|
||||
intent.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"6"://精品课
|
||||
case"7":
|
||||
intent.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
intent.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"9"://积分商城
|
||||
if(BigModule())
|
||||
{
|
||||
intent.setClass(getContext(), BigPointsMallActivity.class);
|
||||
}
|
||||
else
|
||||
{
|
||||
intent.setClass(getContext(), PointsMallActivity.class);
|
||||
}
|
||||
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"10"://指南
|
||||
intent.setClass(getContext(), BookshelfListActivity2.class);
|
||||
intent.putExtra("typeUuid", pushBean.getExtra().getUuid());
|
||||
intent.putExtra("title", pushBean.getExtra().getName());
|
||||
intent.putExtra("loadUrl", Url.getGuideList);
|
||||
intent.putExtra("type", "0");
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"11"://普通url
|
||||
intent.setClass(getContext(), WebActivity.class);
|
||||
intent.putExtra("url",pushBean.getExtra().getUrl());
|
||||
intent.putExtra("title","推送消息");
|
||||
intent.putExtra("need_share","0");
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case "12"://申请随访
|
||||
case "14":
|
||||
intent.setClass(getContext(), NormNewPatientActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case "13"://解除随访
|
||||
// intent.setClass(getContext(), NewSystemMessageActivity.class);
|
||||
// intent.putExtra("module",2);
|
||||
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// getContext().startActivity(intent);
|
||||
break;
|
||||
case"15"://精品课评论
|
||||
intent.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
intent.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
intent.putExtra("pinglun","yes");
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"16"://一问多答
|
||||
intent.setClass(getContext(), NewSystemMessageActivity.class);
|
||||
intent.putExtra("step1_uuid",pushBean.getExtra().getStep1_uuid());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"17"://病例讨论
|
||||
intent.setClass(getContext(), CaseCussionDetailActivity.class);
|
||||
intent.putExtra("uuid", pushBean.getExtra().getUuid());//传值病例的uuid
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"18"://送花
|
||||
intent.setClass(getContext(), MyFlowerActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"19"://课件收益
|
||||
intent.setClass(getContext(), MyCoursewareActivity.class);
|
||||
intent.putExtra("changeMyCoolect",1);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"21"://提现
|
||||
intent.setClass(getContext(), BillDetailsActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"20"://发票
|
||||
intent.setClass(getContext(), FaPiaoActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"28"://课件分享
|
||||
case"30"://精品课优质评价
|
||||
case"31"://学完返现
|
||||
case"32"://福利课堂
|
||||
case"33"://阅读福利
|
||||
case"34"://观看福利
|
||||
case"36"://特别奖励
|
||||
intent.setClass(getContext(), AccumulatePointsActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"35"://福利卡
|
||||
intent.setClass(getContext(), MyFuliCardActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case "40"://互动圈
|
||||
intent.setClass(getContext(), GanDanHouseDetialActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
intent.putExtra("uuid",pushBean.getExtra().getUuid());
|
||||
getContext().startActivity(intent);
|
||||
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
public class PushBean {
|
||||
private String display_type;
|
||||
private ExtraBean extra;
|
||||
private BodyBean body;
|
||||
private String msg_id;
|
||||
|
||||
public String getDisplay_type() {
|
||||
return display_type;
|
||||
}
|
||||
|
||||
public void setDisplay_type(String display_type) {
|
||||
this.display_type = display_type;
|
||||
}
|
||||
|
||||
public ExtraBean getExtra() {
|
||||
return extra;
|
||||
}
|
||||
|
||||
public void setExtra(ExtraBean extra) {
|
||||
this.extra = extra;
|
||||
}
|
||||
|
||||
public BodyBean getBody() {
|
||||
return body;
|
||||
}
|
||||
|
||||
public void setBody(BodyBean body) {
|
||||
this.body = body;
|
||||
}
|
||||
|
||||
public String getMsg_id() {
|
||||
return msg_id;
|
||||
}
|
||||
|
||||
public void setMsg_id(String msg_id) {
|
||||
this.msg_id = msg_id;
|
||||
}
|
||||
|
||||
public class ExtraBean
|
||||
{
|
||||
private String type;
|
||||
private String id;
|
||||
private String uuid;
|
||||
private String name;
|
||||
private String url;
|
||||
private String step1_uuid;
|
||||
private String message_id;
|
||||
|
||||
public String getMessage_id() {
|
||||
return message_id;
|
||||
}
|
||||
|
||||
public void setMessage_id(String message_id) {
|
||||
this.message_id = message_id;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getUuid() {
|
||||
return uuid;
|
||||
}
|
||||
|
||||
public void setUuid(String uuid) {
|
||||
this.uuid = uuid;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public String getStep1_uuid() {
|
||||
return step1_uuid;
|
||||
}
|
||||
|
||||
public void setStep1_uuid(String step1_uuid) {
|
||||
this.step1_uuid = step1_uuid;
|
||||
}
|
||||
}
|
||||
public class BodyBean
|
||||
{
|
||||
private String title;
|
||||
private String text;
|
||||
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
public String getText() {
|
||||
return text;
|
||||
}
|
||||
|
||||
public void setText(String text) {
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
/**
|
||||
* 常量类
|
||||
*/
|
||||
public class PushConstants {
|
||||
/**
|
||||
* 应用申请的Appkey
|
||||
*/
|
||||
// public static final String APP_KEY = "应用申请的Appkey";
|
||||
// public static final String APP_KEY = "6216df0fbe56207ef152880d";
|
||||
public static final String APP_KEY = "56caa908e0f55aeff4001cd0";
|
||||
/**
|
||||
* 应用申请的UmengMessageSecret
|
||||
*/
|
||||
// public static final String MESSAGE_SECRET = "应用申请的UmengMessageSecret";
|
||||
public static final String MESSAGE_SECRET = "38088a7ef3b841e2db034b2f212a4a68";
|
||||
// public static final String MESSAGE_SECRET = "2545ed6cd6d0d786680440272c1281bb";
|
||||
|
||||
/**
|
||||
* 后台加密消息的密码(仅Demo用,请勿将此密码泄漏)
|
||||
*/
|
||||
// public static final String APP_MASTER_SECRET = "0res89pxjfisldc6byibmi7ctd3uxomu";
|
||||
public static final String APP_MASTER_SECRET = "8yn9plhdj82c6ubljpieqzr2dlrp7eg6";
|
||||
/**
|
||||
* 渠道名称,修改为您App的发布渠道名称
|
||||
*/
|
||||
public static final String CHANNEL = "Umeng";
|
||||
|
||||
/**
|
||||
* 小米后台APP对应的xiaomi id
|
||||
*/
|
||||
// public static final String MI_ID = "填写您在小米后台APP对应的xiaomi id";
|
||||
public static final String MI_ID = "2882303761517470793";
|
||||
|
||||
/**
|
||||
* 小米后台APP对应的xiaomi key
|
||||
*/
|
||||
// public static final String MI_KEY = "填写您在小米后台APP对应的xiaomi key";
|
||||
public static final String MI_KEY = "5431747048793";
|
||||
|
||||
/**
|
||||
* 魅族后台APP对应的xiaomi id
|
||||
*/
|
||||
// public static final String MEI_ZU_ID = "填写您在魅族后台APP对应的app id";
|
||||
public static final String MEI_ZU_ID = "116090";
|
||||
|
||||
/**
|
||||
* 魅族后台APP对应的xiaomi key
|
||||
*/
|
||||
// public static final String MEI_ZU_KEY = "填写您在魅族后台APP对应的app key";
|
||||
public static final String MEI_ZU_KEY = "9413f9968d654df092afecf4d3782391";
|
||||
|
||||
/**
|
||||
* OPPO后台APP对应的app key
|
||||
*/
|
||||
// public static final String OPPO_KEY = "填写您在OPPO后台APP对应的app key";
|
||||
public static final String OPPO_KEY = "75D5Vqsg63wok0S0w4SKog0w8";
|
||||
|
||||
/**
|
||||
* OPPO后台APP对应的app secret
|
||||
*/
|
||||
// public static final String OPPO_SECRET = "填写您在OPPO后台APP对应的app secret";
|
||||
public static final String OPPO_SECRET = "416a4f5eF822ddcB73B627Cc310636D7";
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,378 @@
|
||||
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
|
||||
import static cn.shangyu.gdxzExpert.utils.CommonUtil.BigModule;
|
||||
import static cn.shangyu.gdxzExpert.utils.HttpMD5SendInfoUtil.sendJsonPostParamNoResultMD5;
|
||||
import static cn.shangyu.gdxzExpert.utils.StaUtil.EXPERT_PUSH_CLASS_QUALITY_DETAILS;
|
||||
import static cn.shangyu.gdxzExpert.utils.StaUtil.EXPERT_PUSH_COURSEWARE_DETAILS;
|
||||
import static cn.shangyu.gdxzExpert.utils.Url.appMesageRead;
|
||||
|
||||
import android.app.Application;
|
||||
import android.app.Notification;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.umeng.analytics.MobclickAgent;
|
||||
import com.umeng.commonsdk.UMConfigure;
|
||||
import com.umeng.message.PushAgent;
|
||||
import com.umeng.message.UmengMessageHandler;
|
||||
import com.umeng.message.UmengNotificationClickHandler;
|
||||
import com.umeng.message.api.UPushRegisterCallback;
|
||||
import com.umeng.message.entity.UMessage;
|
||||
|
||||
import org.android.agoo.huawei.HuaWeiRegister;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.shangyu.gdxzExpert.activity.AccumulatePointsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BillDetailsActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.BookshelfListActivity2;
|
||||
import cn.shangyu.gdxzExpert.activity.FaPiaoActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.GanDanHouseDetialActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyCoursewareActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFlowerActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MyFuliCardActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.WebActivity;
|
||||
import cn.shangyu.gdxzExpert.big.activity.BigPointsMallActivity;
|
||||
import cn.shangyu.gdxzExpert.big.activity.NormNewPatientActivity;
|
||||
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.StringUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
|
||||
|
||||
/**
|
||||
* PushSDK集成帮助类
|
||||
*/
|
||||
public class PushHelper {
|
||||
|
||||
private static final String TAG = "PushHelper";
|
||||
private static PushBean pushBean;
|
||||
private static Intent intent;
|
||||
/**
|
||||
* 预初始化
|
||||
*/
|
||||
public static void preInit(Context context) {
|
||||
//解决厂商通知点击时乱码等问题
|
||||
PushAgent.setup(context, PushConstants.APP_KEY, PushConstants.MESSAGE_SECRET);
|
||||
UMConfigure.preInit(context, PushConstants.APP_KEY, PushConstants.CHANNEL);
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化
|
||||
*/
|
||||
public static void init(final Context context) {
|
||||
// 基础组件包提供的初始化函数,应用配置信息:http://message.umeng.com/list/apps
|
||||
// 参数一:上下文context;
|
||||
// 参数二:应用申请的Appkey;
|
||||
// 参数三:发布渠道名称;
|
||||
// 参数四:设备类型,UMConfigure.DEVICE_TYPE_PHONE:手机;UMConfigure.DEVICE_TYPE_BOX:盒子;默认为手机
|
||||
// 参数五:Push推送业务的secret,填写Umeng Message Secret对应信息
|
||||
// UMConfigure.init(context, PushConstants.APP_KEY, PushConstants.CHANNEL,
|
||||
// UMConfigure.DEVICE_TYPE_PHONE, PushConstants.MESSAGE_SECRET);
|
||||
|
||||
//获取推送实例
|
||||
PushAgent pushAgent = PushAgent.getInstance(context);
|
||||
|
||||
pushAgent.setNotificationChannelName("系统通知");
|
||||
//TODO:需修改为您app/src/main/AndroidManifest.xml中package值
|
||||
pushAgent.setResourcePackageName("cn.shangyu.gdxzExpert");
|
||||
|
||||
//推送设置
|
||||
pushSetting(context);
|
||||
|
||||
//注册推送服务,每次调用register方法都会回调该接口
|
||||
pushAgent.register(new UPushRegisterCallback() {
|
||||
|
||||
@Override
|
||||
public void onSuccess(String deviceToken) {
|
||||
//注册成功会返回deviceToken deviceToken是推送消息的唯一标志
|
||||
Log.d(TAG, "deviceToken --> " + deviceToken);
|
||||
addUMToken(deviceToken);
|
||||
// //获取deviceToken可通过接口:
|
||||
// PushAgent.getInstance(context).getRegistrationId();
|
||||
// //可设置别名,推送时使用别名推送
|
||||
// String alias = "123456";
|
||||
// String type = "aa";
|
||||
// PushAgent.getInstance(context).setAlias(alias, type, new UPushAliasCallback() {
|
||||
// @Override
|
||||
// public void onMessage(boolean success, String message) {
|
||||
// Log.i(TAG, "setAlias " + success + " msg:" + message);
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(String errCode, String errDesc) {
|
||||
Log.d(TAG, "register failure:--> " + "code:" + errCode + ",desc:" + errDesc);
|
||||
}
|
||||
});
|
||||
registerDeviceChannel(context);
|
||||
}
|
||||
public static void addUMToken(String device_token) {
|
||||
|
||||
Map<String,String> map = new HashMap<>();
|
||||
map.put("device_token",device_token);
|
||||
sendJsonPostParamNoResultMD5(Url.addUMToken,map);
|
||||
}
|
||||
public static void readMessage(String id) {
|
||||
|
||||
Map<String,String> map = new HashMap<>();
|
||||
map.put("id",id);
|
||||
sendJsonPostParamNoResultMD5(appMesageRead,map);
|
||||
}
|
||||
/**
|
||||
* 注册设备推送通道(小米、华为等设备的推送)
|
||||
*/
|
||||
private static void registerDeviceChannel(Context context) {
|
||||
//小米通道,填写您在小米后台APP对应的xiaomi id和key
|
||||
// MiPushRegistar.register(context, PushConstants.MI_ID, PushConstants.MI_KEY,false);
|
||||
// //华为,注意华为通道的初始化参数在minifest中配置
|
||||
HuaWeiRegister.register((Application) context.getApplicationContext());
|
||||
// //魅族,填写您在魅族后台APP对应的app id和key
|
||||
//// MeizuRegister.register(context, PushConstants.MEI_ZU_ID, PushConstants.MEI_ZU_KEY);
|
||||
// //OPPO,填写您在OPPO后台APP对应的app key和secret
|
||||
// OppoRegister.register(context, PushConstants.OPPO_KEY, PushConstants.OPPO_SECRET);
|
||||
//vivo,注意vivo通道的初始化参数在minifest中配置
|
||||
// VivoRegister.register(context);
|
||||
}
|
||||
|
||||
|
||||
//推送设置
|
||||
private static void pushSetting(Context context) {
|
||||
PushAgent pushAgent = PushAgent.getInstance(context);
|
||||
|
||||
//设置通知栏显示通知的最大个数(0~10),0:不限制个数
|
||||
pushAgent.setDisplayNotificationNumber(0);
|
||||
|
||||
//推送消息处理
|
||||
UmengMessageHandler msgHandler = new UmengMessageHandler() {
|
||||
//处理通知栏消息
|
||||
@Override
|
||||
public void dealWithNotificationMessage(Context context, UMessage msg) {
|
||||
super.dealWithNotificationMessage(context, msg);
|
||||
Log.d(TAG, "notification receiver:" + msg.getRaw().toString());
|
||||
}
|
||||
|
||||
//自定义通知样式,此方法可以修改通知样式等
|
||||
@Override
|
||||
public @Nullable Notification getNotification(Context context, UMessage msg) {
|
||||
return super.getNotification(context, msg);
|
||||
}
|
||||
|
||||
//处理透传消息
|
||||
@Override
|
||||
public void dealWithCustomMessage(Context context, UMessage msg) {
|
||||
super.dealWithCustomMessage(context, msg);
|
||||
Log.d(TAG, "custom receiver:" + msg.getRaw().toString());
|
||||
}
|
||||
};
|
||||
pushAgent.setMessageHandler(msgHandler);
|
||||
|
||||
//推送消息点击处理
|
||||
UmengNotificationClickHandler notificationClickHandler = new UmengNotificationClickHandler() {
|
||||
@Override
|
||||
public void openActivity(Context context, UMessage msg) {
|
||||
super.openActivity(context, msg);
|
||||
Log.d(TAG, "click openActivity: " + msg.getRaw().toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void launchApp(Context context, UMessage msg) {
|
||||
super.launchApp(context, msg);
|
||||
|
||||
try {
|
||||
JSONObject jsonObject = new JSONObject( msg.getRaw().toString());
|
||||
|
||||
Log.d(TAG, "click launchApp: " + msg.getRaw().toString());
|
||||
pushBean= GsonTools.fromGsonToBean(msg.getRaw().toString(),PushBean.class);
|
||||
if(pushBean!=null&&pushBean.getExtra()!=null&& !StringUtil.isEmpty(pushBean.getExtra().getMessage_id()))
|
||||
{
|
||||
readMessage(pushBean.getExtra().getMessage_id());
|
||||
}
|
||||
if(pushBean!=null&&pushBean.getExtra()!=null&&pushBean.getExtra().getType()!=null)
|
||||
{
|
||||
intent=new Intent();
|
||||
|
||||
switch (pushBean.getExtra().getType())
|
||||
{
|
||||
case "1"://新闻
|
||||
intent.setClass(getContext(),PushNewsDetailActivity.class);
|
||||
intent.putExtra("title", "新闻详情");
|
||||
intent.putExtra("newsuuid", pushBean.getExtra().getUuid());
|
||||
intent.putExtra("flag", 3);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"3"://肝胆视频
|
||||
Intent intent4 = VideoDetailPolyvPlayerActivity.newIntent(getContext(), VideoDetailPolyvPlayerActivity.PlayMode.portrait,"");
|
||||
// 在线视频和下载的视频播放的时候只显示播放器窗口,用该参数来控制
|
||||
intent4.putExtra("startNow", false);
|
||||
intent4.putExtra("isVlmsOnline", false);
|
||||
intent4.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent4.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent4);
|
||||
break;
|
||||
case"4"://直播
|
||||
intent.setType("zhibo");
|
||||
intent.setClass(getContext(),PushZhiBoActivity.class);
|
||||
intent.putExtra("id", pushBean.getExtra().getId());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"5"://肝胆课件
|
||||
MobclickAgent.onEvent(getContext(),EXPERT_PUSH_COURSEWARE_DETAILS);
|
||||
intent.setClass(getContext(),PushCourseUrlDetailActivity.class);
|
||||
intent.putExtra("uuid", pushBean.getExtra().getUuid());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"6"://精品课
|
||||
case"7":
|
||||
MobclickAgent.onEvent(getContext(),EXPERT_PUSH_CLASS_QUALITY_DETAILS);
|
||||
intent.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
intent.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"9"://积分商城
|
||||
if(BigModule())
|
||||
{
|
||||
intent.setClass(getContext(), BigPointsMallActivity.class);
|
||||
}
|
||||
else
|
||||
{
|
||||
intent.setClass(getContext(), PointsMallActivity.class);
|
||||
}
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"10"://指南
|
||||
intent.setClass(getContext(), BookshelfListActivity2.class);
|
||||
intent.putExtra("typeUuid", pushBean.getExtra().getUuid());
|
||||
intent.putExtra("title", pushBean.getExtra().getName());
|
||||
intent.putExtra("loadUrl", Url.getGuideList);
|
||||
intent.putExtra("type", "0");
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"11"://普通url
|
||||
intent.setClass(getContext(), WebActivity.class);
|
||||
intent.putExtra("url",pushBean.getExtra().getUrl());
|
||||
intent.putExtra("title","推送消息");
|
||||
intent.putExtra("need_share","0");
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case "14":
|
||||
intent.setClass(context, NormNewPatientActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"15"://精品课评论
|
||||
// intent.setClass(getContext(), CourseDetailPolyvPlayerActivity.class);
|
||||
// intent.putExtra("excellentcourse_id", pushBean.getExtra().getId());
|
||||
// intent.putExtra("pinglun","yes");
|
||||
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// getContext().startActivity(intent);
|
||||
// break;
|
||||
case"16"://一问多答
|
||||
case"17"://病例讨论
|
||||
intent.setClass(getContext(), NewSystemMessageActivity.class);
|
||||
intent.putExtra("module",3);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"18"://送花
|
||||
intent.setClass(getContext(), MyFlowerActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"19"://课件收益
|
||||
intent.setClass(getContext(), MyCoursewareActivity.class);
|
||||
intent.putExtra("changeMyCoolect",1);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"21"://提现
|
||||
intent.setClass(getContext(), BillDetailsActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"20"://发票
|
||||
intent.setClass(getContext(), FaPiaoActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"28"://课件分享
|
||||
case"30"://精品课优质评价
|
||||
case"31"://学完返现
|
||||
case"32"://福利课堂
|
||||
case"33"://阅读福利
|
||||
case"34"://观看福利
|
||||
case"36"://特别奖励
|
||||
intent.setClass(getContext(), AccumulatePointsActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case"35"://福利卡
|
||||
intent.setClass(getContext(), MyFuliCardActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
case "40"://互动圈
|
||||
intent.setClass(getContext(), GanDanHouseDetialActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
intent.putExtra("uuid",pushBean.getExtra().getUuid());
|
||||
getContext().startActivity(intent);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
else if(jsonObject.optJSONObject("extra")!=null&&!(jsonObject.getJSONObject("extra").isNull("url")))
|
||||
{
|
||||
Log.d(TAG, "click launchApp: " +jsonObject.getJSONObject("extra").getString("url"));
|
||||
Intent intent2=new Intent(getContext(), WebActivity.class);
|
||||
intent2.putExtra("url",jsonObject.getJSONObject("extra").getString("url"));
|
||||
intent2.putExtra("title","推送消息");
|
||||
intent2.putExtra("need_share","0");
|
||||
intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
getContext().startActivity(intent2);
|
||||
}
|
||||
pushBean=null;
|
||||
intent=null;
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
Log.d(TAG, "click launchApp: " + e.toString());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismissNotification(Context context, UMessage msg) {
|
||||
super.dismissNotification(context, msg);
|
||||
Log.d(TAG, "click dismissNotification: " + msg.getRaw().toString());
|
||||
}
|
||||
};
|
||||
pushAgent.setNotificationClickHandler(notificationClickHandler);
|
||||
|
||||
//自定义接收并处理消息
|
||||
// pushAgent.setPushIntentServiceClass(MyCustomMessageService.class);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,685 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.utils.Url.zhibourl;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.graphics.Bitmap;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Message;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Base64;
|
||||
import android.util.Log;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.view.WindowManager;
|
||||
import android.webkit.WebChromeClient;
|
||||
import android.webkit.WebSettings;
|
||||
import android.webkit.WebView;
|
||||
import android.webkit.WebViewClient;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
import com.lidroid.xutils.exception.HttpException;
|
||||
import com.lidroid.xutils.http.ResponseInfo;
|
||||
import com.lidroid.xutils.http.callback.RequestCallBack;
|
||||
import com.lidroid.xutils.http.client.HttpRequest;
|
||||
import com.nostra13.universalimageloader.core.ImageLoader;
|
||||
import com.umeng.socialize.UMShareAPI;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
import cn.shangyu.gdxzExpert.bean.TimestampBean;
|
||||
import cn.shangyu.gdxzExpert.http.HttpHelper;
|
||||
import cn.shangyu.gdxzExpert.utils.AESUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.CommonUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.Constant;
|
||||
import cn.shangyu.gdxzExpert.utils.GsonTools;
|
||||
import cn.shangyu.gdxzExpert.utils.LogUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.ShareUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.SignUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.StreamTool;
|
||||
import cn.shangyu.gdxzExpert.utils.ToastUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.UpdateVersionUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
import cn.shangyu.gdxzExpert.view.X5WebView;
|
||||
|
||||
public class PushZhiBoActivity extends AppCompatActivity implements OnClickListener {
|
||||
private X5WebView webView;
|
||||
private PushZhiBoActivity mActivity;
|
||||
public View loadingView;
|
||||
private String url;
|
||||
private ImageView top_back;
|
||||
private TextView mTitle;
|
||||
|
||||
private FrameLayout video_fullView;// 全屏时视频加载view
|
||||
private View xCustomView;
|
||||
private WebChromeClient.CustomViewCallback xCustomViewCallback;
|
||||
private myWebChromeClient xwebchromeclient;
|
||||
private View layout_top;
|
||||
private ImageButton mIb_share;
|
||||
private String summary;
|
||||
private String imageUrl = "";
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
// TODO Auto-generated method stub
|
||||
super.onCreate(savedInstanceState);
|
||||
this.setContentView(R.layout.activity_zhi_bo);
|
||||
Toolbar mToolbar=findViewById(R.id.toolbar);
|
||||
ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init();
|
||||
X5WebView.initHardwareAccelerate(this);
|
||||
webView = this.findViewById(R.id.aaaaaa);
|
||||
webView.setKeepScreenOn(true); //确保屏幕长亮
|
||||
layout_top = this.findViewById(R.id.layout_top);
|
||||
loadingView = this.findViewById(R.id.loading_view);
|
||||
top_back = (ImageView) this.findViewById(R.id.top_back);
|
||||
mTitle = (TextView) this.findViewById(R.id.top_title);
|
||||
mIb_share = (ImageButton) this.findViewById(R.id.top_right);
|
||||
video_fullView = (FrameLayout) this.findViewById(R.id.f_move);
|
||||
video_fullView.setKeepScreenOn(true); //确保屏幕长亮
|
||||
mIb_share.setVisibility(View.VISIBLE);
|
||||
mIb_share.setImageResource(R.drawable.share_icon);
|
||||
top_back.setOnClickListener(this);
|
||||
mIb_share.setOnClickListener(this);
|
||||
mActivity = this;
|
||||
// url = getIntent().getStringExtra("url");
|
||||
zhiboDetail(getIntent().getStringExtra("id"));
|
||||
// if (!getIntent().getType().equals("zhibo"))
|
||||
// {
|
||||
// createhideWebVeiw();//解决WebView写入localstorage但首次加载取不到值的问题
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// /**
|
||||
// * 这个方法等到请求了接口后调用
|
||||
// *
|
||||
// */
|
||||
//// InitIntent();
|
||||
// }
|
||||
|
||||
}
|
||||
private void createhideWebVeiw() {
|
||||
|
||||
final WebView webView = new WebView(this);
|
||||
webView.getSettings().setJavaScriptEnabled(true);
|
||||
webView.getSettings().setDomStorageEnabled(true);// 打开本地缓存提供JS调用,至关重要
|
||||
// webView.getSettings().setAppCacheEnabled(false);
|
||||
|
||||
webView.getSettings().setDatabaseEnabled(true); // 如果需要 WebSQL(也部分废弃)
|
||||
webView.getSettings().setAllowFileAccess(true); // 如需访问文件
|
||||
webView.getSettings().setAllowContentAccess(true);
|
||||
|
||||
webView.loadUrl(url);
|
||||
webView.setWebViewClient(new WebViewClient() {
|
||||
|
||||
@Override
|
||||
public void onPageFinished(WebView view, String url) {
|
||||
super.onPageFinished(view, url);
|
||||
String id = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.uuid, "123");
|
||||
String avatar = Url.urlHtml+SharePrefUtil.getString(PushZhiBoActivity.this, Constant.photo,"https://doc.igandan.com/app/html/img/2016/20160714132557.png");
|
||||
String name = null;
|
||||
try {
|
||||
String str = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.realName, "肝胆相照专家端");
|
||||
name = Base64.encodeToString(str.getBytes("UTF-8"), Base64.DEFAULT);
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
String params = "{\"name\":\""+name+"\",\"id\":\""+id+"\",\"avatar\":\""+avatar+"\"}";
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
params = params.toString().replaceAll("\\+", "=").replaceAll("\n", "");
|
||||
LogUtil.i("params = "+params);
|
||||
view.evaluateJavascript("window.localStorage.setItem('watchlive_current_user','" +params + "');", null);
|
||||
} else {
|
||||
view.loadUrl("javascript:(function({window.localStorage.setItem('watchlive_current_user','" + params.toString() + "')})()");
|
||||
view.reload();
|
||||
}
|
||||
webView.destroy();
|
||||
|
||||
//正常加载网页
|
||||
// InitIntent();
|
||||
}
|
||||
});
|
||||
}
|
||||
public class MyWebViewClient extends WebViewClient {
|
||||
|
||||
private ProgressDialog loadingBar;
|
||||
|
||||
@Override
|
||||
public void onPageStarted(WebView view, String url, Bitmap favicon) {
|
||||
loadingView.setVisibility(View.VISIBLE);
|
||||
super.onPageStarted(view, url, favicon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
||||
view.loadUrl(url); // webview里面的链接还在同一个页面中加载
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPageFinished(WebView view, String url) {
|
||||
String id = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.uuid, "123");
|
||||
String avatar = Url.urlHtml+SharePrefUtil.getString(PushZhiBoActivity.this, Constant.photo,"https://doc.igandan.com/app/html/img/2016/20160714132557.png");
|
||||
String name = null;
|
||||
try {
|
||||
String str = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.realName, "肝胆相照专家端");
|
||||
name = Base64.encodeToString(str.getBytes("UTF-8"), Base64.DEFAULT);
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
String params = "{\"name\":\""+name+"\",\"id\":\""+id+"\",\"avatar\":\""+avatar+"\"}";
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
view.evaluateJavascript("window.localStorage.setItem('watchlive_current_user','" +params + "');", null);
|
||||
} else {
|
||||
view.loadUrl("javascript:(function({window.localStorage.setItem('watchlive_current_user','" + params.toString() + "')})()");
|
||||
view.reload();
|
||||
}
|
||||
|
||||
loadingView.setVisibility(View.GONE);
|
||||
super.onPageFinished(view, url);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onReceivedError(WebView view, int errorCode,
|
||||
String description, String failingUrl) {
|
||||
// ToastUtil.showToast("加载失败,请检查网络");
|
||||
loadingView.setVisibility(View.GONE);
|
||||
LogUtil.i("onReceivedError", "onReceivedError" + failingUrl
|
||||
+ errorCode + description);
|
||||
view.loadUrl("file:///android_asset/error/error.html");
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("NewApi")
|
||||
public void InitIntent() {
|
||||
// summary = getIntent().getStringExtra("newsTitle");
|
||||
// imageUrl = Url.urlHtml + getIntent().getStringExtra("summary");// 图的地址
|
||||
if (getIntent().getType().equals("zhibo")) {
|
||||
mTitle.setText("肝胆直播");
|
||||
} else {
|
||||
mTitle.setText("现代肝病学院");
|
||||
}
|
||||
if(CommonUtil.BigModule())
|
||||
{
|
||||
mTitle.setTextSize(23);
|
||||
}
|
||||
// url="http://www.baidu.com/";
|
||||
// DataCleanManager.cleanWebCache(this);
|
||||
// WebSettings setting = webView.getSettings();
|
||||
// setting.setPluginState(PluginState.ON);
|
||||
// setting.setUseWideViewPort(true);
|
||||
// setting.setJavaScriptEnabled(true); // Support JavaScript
|
||||
// setting.setJavaScriptCanOpenWindowsAutomatically(true);// 支持通过JS打开新窗口
|
||||
// // setting.setPluginsEnabled(true); //Support Plugins, for example just
|
||||
// // like flash plugin.
|
||||
// setting.setLoadWithOverviewMode(true);
|
||||
// setting.setUseWideViewPort(true);
|
||||
// setting.setDomStorageEnabled(true);
|
||||
// setting.setSupportZoom(true); // Zoom Control on web (You don't need
|
||||
// setting.setBuiltInZoomControls(true); // Enable Multitouch if
|
||||
// supported
|
||||
// by ROM
|
||||
|
||||
//新添加使用了localStorage存储
|
||||
// webView.getSettings().setAppCacheMaxSize(1024*1024*8);
|
||||
// String appCachePath = getApplicationContext().getCacheDir().getAbsolutePath();
|
||||
// webView.getSettings().setAppCachePath(appCachePath);
|
||||
// webView.getSettings().setAllowFileAccess(true);
|
||||
// webView.getSettings().setAppCacheEnabled(true);
|
||||
|
||||
WebSettings webSettings = webView.getSettings();
|
||||
webSettings.setJavaScriptEnabled(true); // 如果需要 JS
|
||||
webSettings.setDomStorageEnabled(true); // 启用 DOM 存储(LocalStorage 等)
|
||||
webSettings.setDatabaseEnabled(true); // 如果需要 WebSQL(也部分废弃)
|
||||
webSettings.setAllowFileAccess(true); // 如需访问文件
|
||||
webSettings.setAllowContentAccess(true);
|
||||
|
||||
String userAgent = webView.getSettings().getUserAgentString();
|
||||
String userAgents = userAgent + "gdxz-expert";
|
||||
webView.getSettings().setUserAgentString(userAgents);
|
||||
webView.setInitialScale(50);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||
webView.getSettings().setMixedContentMode(
|
||||
WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||
}
|
||||
if (getIntent().getType().equals("zhibo"))
|
||||
{
|
||||
String id = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.uuid, "123");
|
||||
String avatar = Url.urlHtml+SharePrefUtil.getString(PushZhiBoActivity.this, Constant.photo,"https://doc.igandan.com/app/html/img/2016/20160714132557.png");
|
||||
String name = null;
|
||||
try {
|
||||
String str = SharePrefUtil.getString(PushZhiBoActivity.this, Constant.realName, "肝胆相照专家端");
|
||||
name = Base64.encodeToString(str.getBytes("UTF-8"), Base64.DEFAULT);
|
||||
name=name.replaceAll("\r|\n", "");
|
||||
//name = str;
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
String temurl= null;
|
||||
try {
|
||||
temurl = zhibourl+"?id="+id+"&name="+name+"&avatar="+avatar+"&url="+url+"&sign="+ AESUtil.Encrypt(id+name+avatar+url,"deoep09_klodLdAo");
|
||||
|
||||
Log.d("gdxzzhibo","temurl ="+temurl);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
webView.loadUrl(temurl);
|
||||
xwebchromeclient = new myWebChromeClient();
|
||||
webView.setWebChromeClient(xwebchromeclient);
|
||||
webView.setWebViewClient(new WebViewClient(){
|
||||
@Override
|
||||
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
||||
view.loadUrl(url);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
//webView.loadUrl("https://www.baidu.com");
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
webView.loadUrl(url);
|
||||
xwebchromeclient = new myWebChromeClient();
|
||||
webView.setWebChromeClient(xwebchromeclient);
|
||||
webView.setWebViewClient(new MyWebViewClient());
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
// TODO Auto-generated method stubdes
|
||||
switch (v.getId()) {
|
||||
case R.id.top_back:
|
||||
this.finish();
|
||||
|
||||
break;
|
||||
case R.id.top_right:
|
||||
share();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 调用分享功能
|
||||
*/
|
||||
private void share() {
|
||||
String shareTitle = summary;
|
||||
String shareUrl = url;
|
||||
String msgSinaContent = shareTitle + shareUrl;
|
||||
// ShareUtils.shareMsg(ct, shareTitle, "分享给你一个好看的文章," + shareTitle +
|
||||
// " 详情:" + shareUrl, null);
|
||||
Bitmap bitmap = ImageLoader.getInstance().loadImageSync(imageUrl);
|
||||
if (TextUtils.isEmpty(shareUrl)) {
|
||||
shareUrl = "";
|
||||
}
|
||||
if (TextUtils.isEmpty(summary)) {
|
||||
summary = "";
|
||||
}
|
||||
if (TextUtils.isEmpty(imageUrl)) {
|
||||
imageUrl = "";
|
||||
}
|
||||
ShareUtils.shareUmeng(PushZhiBoActivity.this, "肝胆相照直播:" + shareTitle,
|
||||
summary, msgSinaContent, imageUrl, shareUrl, bitmap);
|
||||
// final UMImage shareImg;// 友盟分享的缩略图
|
||||
// Bitmap file = null;
|
||||
// try {
|
||||
// file = Glide.with(BaseApplication.getInstance())
|
||||
// .load(imageUrl).asBitmap()
|
||||
// .into(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL).get();
|
||||
// } catch (InterruptedException | ExecutionException e) {
|
||||
// // TODO Auto-generated catch block
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
// if (StringUtil.isEmpty(imageUrl.replace(Url.urlHtml, ""))) {
|
||||
// shareImg = new UMImage(ZhiBoActivity.this,
|
||||
// "http://doc.igandan.com/app/img/expert_logo.png");
|
||||
// } else {
|
||||
//
|
||||
// shareImg = new UMImage(ZhiBoActivity.this, file);
|
||||
// }
|
||||
// UMWeb web = new UMWeb(shareUrl);
|
||||
// shareTitle = "肝胆想照直播:" + shareTitle;
|
||||
// web.setTitle(shareTitle);// 标题
|
||||
// web.setThumb(shareImg); // 缩略图
|
||||
//
|
||||
// web.setDescription(msgSinaContent);// 描述
|
||||
// new ShareAction(ZhiBoActivity.this)
|
||||
// .withMedia(web)
|
||||
// .setDisplayList(SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE,
|
||||
// SHARE_MEDIA.SINA)
|
||||
// .setCallback(
|
||||
// new UMengShareHelper(ZhiBoActivity.this).shareListener)
|
||||
// .open();
|
||||
|
||||
}
|
||||
|
||||
public class myWebChromeClient extends WebChromeClient {
|
||||
private View xprogressvideo;
|
||||
|
||||
// 播放网络视频时全屏会被调用的方法
|
||||
@Override
|
||||
public void onShowCustomView(View view, CustomViewCallback callback) {
|
||||
// Log.i("fangfa","已经进入了。。。。。。。。");
|
||||
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
|
||||
webView.setVisibility(View.GONE);
|
||||
layout_top.setVisibility(View.GONE);
|
||||
|
||||
// 如果一个视图已经存在,那么立刻终止并新建一个
|
||||
if (xCustomView != null) {
|
||||
callback.onCustomViewHidden();
|
||||
return;
|
||||
}
|
||||
xCustomView = view;
|
||||
xCustomViewCallback = callback;
|
||||
video_fullView.addView(view);
|
||||
|
||||
video_fullView.setVisibility(View.VISIBLE);
|
||||
|
||||
setFullScreen();
|
||||
}
|
||||
|
||||
// 视频播放退出全屏会被调用的
|
||||
@Override
|
||||
public void onHideCustomView() {
|
||||
layout_top.setVisibility(View.VISIBLE);
|
||||
if (xCustomView == null)// 不是全屏播放状态
|
||||
return;
|
||||
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
|
||||
xCustomView.setVisibility(View.GONE);
|
||||
video_fullView.removeView(xCustomView);
|
||||
xCustomView = null;
|
||||
video_fullView.setVisibility(View.GONE);
|
||||
xCustomViewCallback.onCustomViewHidden();
|
||||
webView.setVisibility(View.VISIBLE);
|
||||
quitFullScreen();
|
||||
}
|
||||
|
||||
// 视频加载时进程loading
|
||||
@Override
|
||||
public View getVideoLoadingProgressView() {
|
||||
if (xprogressvideo == null) {
|
||||
LayoutInflater inflater = LayoutInflater
|
||||
.from(PushZhiBoActivity.this);
|
||||
xprogressvideo = inflater.inflate(R.layout.loading_view, null);
|
||||
}
|
||||
return xprogressvideo;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置全屏
|
||||
*/
|
||||
private void setFullScreen() {
|
||||
// 设置全屏的相关属性,获取当前的屏幕状态,然后设置全屏
|
||||
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
|
||||
WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
||||
// 全屏下的状态码:1098974464
|
||||
// 窗口下的状态吗:1098973440
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 退出全屏
|
||||
*/
|
||||
private void quitFullScreen() {
|
||||
// 声明当前屏幕状态的参数并获取
|
||||
final WindowManager.LayoutParams attrs = getWindow().getAttributes();
|
||||
attrs.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
||||
getWindow().setAttributes(attrs);
|
||||
getWindow()
|
||||
.clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否是全屏
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public boolean inCustomView() {
|
||||
return (xCustomView != null);
|
||||
}
|
||||
|
||||
/**
|
||||
* 全屏时按返加键执行退出全屏方法
|
||||
*/
|
||||
public void hideCustomView() {
|
||||
xwebchromeclient.onHideCustomView();
|
||||
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
webView.onResume();
|
||||
// webView.resumeTimers();
|
||||
try {
|
||||
if (webView != null) {
|
||||
webView.getClass().getMethod("onResume")
|
||||
.invoke(webView, (Object[]) null);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
/**
|
||||
* 设置为横屏
|
||||
*/
|
||||
if (getRequestedOrientation() != ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE) {
|
||||
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPause() {
|
||||
super.onPause();
|
||||
webView.onPause();
|
||||
// webView.pauseTimers();
|
||||
try {
|
||||
if (webView != null) {
|
||||
webView.getClass().getMethod("onPause")
|
||||
.invoke(webView, (Object[]) null);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 主要是把webview所持用的资源销毁,
|
||||
*/
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
webView.setVisibility(View.GONE);
|
||||
super.onDestroy();
|
||||
video_fullView.removeAllViews();
|
||||
webView.loadUrl("about:blank");
|
||||
webView.stopLoading();
|
||||
webView.setWebChromeClient(null);
|
||||
webView.setWebViewClient(null);
|
||||
webView.destroy();
|
||||
UMShareAPI.get(this).release();
|
||||
//释放资源
|
||||
if (webView != null)
|
||||
webView.destroy();
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否是全屏,如果是就隐藏,否则就退出当前的页面
|
||||
*
|
||||
* @param keyCode
|
||||
* @param event
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
||||
if (keyCode == KeyEvent.KEYCODE_BACK) {
|
||||
if (inCustomView()) {
|
||||
// webViewDetails.loadUrl("about:blank");
|
||||
hideCustomView();
|
||||
return false;
|
||||
} else {
|
||||
webView.loadUrl("about:blank");
|
||||
this.finish();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
private void zhiboDetail(String id) {
|
||||
// if(StringUtil.isEmpty(id))
|
||||
// {
|
||||
// id=getIntent().getData().getQueryParameter("id");
|
||||
// }
|
||||
Map<String,String> map = new HashMap<>();
|
||||
map.put("id",id);
|
||||
sendJsonPostParamNoResultMD5(Url.liveDetail,map,101);
|
||||
}
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
/** 使用SSO授权必须添加如下代码 */
|
||||
|
||||
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
|
||||
}
|
||||
Handler mHandler = new Handler() {
|
||||
public void handleMessage(Message msg) {
|
||||
if (msg != null) {
|
||||
// closeProgressDialog();
|
||||
switch (msg.what){
|
||||
case 101:
|
||||
|
||||
try {
|
||||
JSONObject jsonObject=new JSONObject((String)msg.obj);
|
||||
if("200".equals(jsonObject.getString("code")))
|
||||
{
|
||||
summary=jsonObject.getJSONObject("data").getString("title");
|
||||
imageUrl = Url.urlHtml +jsonObject.getJSONObject("data").getString("liveimg");
|
||||
url=jsonObject.getJSONObject("data").getString("liveurl");
|
||||
InitIntent();
|
||||
}
|
||||
else
|
||||
{
|
||||
ToastUtil.showToast((String)msg.obj);
|
||||
}
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
ToastUtil.showToast((String)msg.obj);
|
||||
}
|
||||
|
||||
break;
|
||||
case 0:
|
||||
ToastUtil.showToast((String)msg.obj);
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
};
|
||||
public void sendJsonPostParamNoResultMD5(final String postUrl, final Map<String, String> param, final int callType) {
|
||||
|
||||
HttpHelper.loadData(HttpRequest.HttpMethod.GET, Url.getTimestamp,null, new RequestCallBack<String>() {
|
||||
|
||||
@Override
|
||||
public void onSuccess(ResponseInfo<String> info) {
|
||||
String uuid = SharePrefUtil.getString(UIUtils.getContext(), Constant.uuid, "");
|
||||
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");
|
||||
if ("200".equals(optString)||"106".equals(optString)||"1".equals(optString)) {
|
||||
Message msg = Message.obtain();
|
||||
msg.what = callType;
|
||||
msg.obj = result;
|
||||
mHandler.sendMessage(msg);
|
||||
}else {
|
||||
mHandler.sendEmptyMessage(0);
|
||||
}
|
||||
}else {
|
||||
mHandler.sendEmptyMessage(0);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.e("提交失败,请重试 = "+e.getMessage());
|
||||
mHandler.sendEmptyMessage(404);
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
|
||||
}
|
||||
}
|
||||
}.start();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(HttpException arg0, String arg1) {
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.umeng.umverify.UMResultCode;
|
||||
import com.umeng.umverify.UMVerifyHelper;
|
||||
import com.umeng.umverify.listener.UMTokenResultListener;
|
||||
import com.umeng.umverify.model.UMTokenRet;
|
||||
|
||||
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
||||
|
||||
public class UverifyHelp {
|
||||
private static final String TAG = "UverifyHelp";
|
||||
private static UMTokenResultListener mTokenResultListener;
|
||||
private static UMVerifyHelper mPhoneNumberAuthHelper;
|
||||
public static void sdkInit() {
|
||||
mTokenResultListener = new UMTokenResultListener() {
|
||||
@Override
|
||||
public void onTokenSuccess(String s) {
|
||||
|
||||
UMTokenRet tokenRet = null;
|
||||
try {
|
||||
tokenRet = UMTokenRet.fromJson(s);
|
||||
if (UMResultCode.CODE_START_AUTHPAGE_SUCCESS.equals(tokenRet.getCode())) {
|
||||
Log.i("TAG", "唤起授权页成功:" + s);
|
||||
}
|
||||
|
||||
if (UMResultCode.CODE_GET_TOKEN_SUCCESS.equals(tokenRet.getCode())) {
|
||||
Log.i("TAG", "获取token成功:" + s);
|
||||
// getResultWithToken(tokenRet.getToken());
|
||||
// mUIConfig.release();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTokenFailed(String s) {
|
||||
Log.e(TAG, "获取token失败:" + s);
|
||||
|
||||
UMTokenRet tokenRet = null;
|
||||
mPhoneNumberAuthHelper.quitLoginPage();
|
||||
try {
|
||||
tokenRet = UMTokenRet.fromJson(s);
|
||||
if (UMResultCode.CODE_ERROR_USER_CANCEL.equals(tokenRet.getCode())) {
|
||||
//模拟的是必须登录 否则直接退出app的场景
|
||||
// finish();
|
||||
} else {
|
||||
Toast.makeText(UIUtils.getContext(), "一键登录失败切换到其他登录方式", Toast.LENGTH_SHORT).show();
|
||||
// Intent pIntent = new Intent(OneKeyLoginActivity.this, MessageActivity.class);
|
||||
// startActivityForResult(pIntent, 1002);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// mUIConfig.release();
|
||||
}
|
||||
};
|
||||
mPhoneNumberAuthHelper = UMVerifyHelper.getInstance(UIUtils.getContext(), mTokenResultListener);
|
||||
mPhoneNumberAuthHelper.setAuthSDKInfo("请开发者自行添加");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,199 @@
|
||||
package cn.shangyu.gdxzExpert.umeng;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.application.BaseApplication.getContext;
|
||||
import static cn.shangyu.gdxzExpert.utils.Url.weurl;
|
||||
import static cn.shangyu.gdxzExpert.wxapi.WXEntryActivity.isExsitMianActivity;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
|
||||
import cn.shangyu.gdxzExpert.activity.CourseUrlDetailActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.GDEventDetailActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.GDEventDetailTopActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.LoginNewActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.MainActivity;
|
||||
import cn.shangyu.gdxzExpert.activity.NewsDetailActivity;
|
||||
import cn.shangyu.gdxzExpert.polyvplayer.VideoDetailPolyvPlayerActivity;
|
||||
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
|
||||
public class WebH5Activity extends Activity {
|
||||
|
||||
private Intent intent;
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
if(getIntent()!=null&&getIntent().getData()!=null&&getIntent().getData().getQueryParameter("types")!=null)
|
||||
{
|
||||
// ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
|
||||
// activityManager.moveTaskToFront(getTaskId(), ActivityManager.MOVE_TASK_WITH_HOME);
|
||||
if (UIUtils.isLogined()) {
|
||||
if(!isExsitMianActivity(getContext(), MainActivity.class))
|
||||
{
|
||||
// 打开登录
|
||||
Intent intent = new Intent();
|
||||
intent.setClass(this, MainActivity.class);
|
||||
startActivity(intent);
|
||||
}
|
||||
|
||||
intent=new Intent();
|
||||
switch (getIntent().getData().getQueryParameter("types"))
|
||||
{
|
||||
case "1"://肝胆视频
|
||||
Intent intent4 = VideoDetailPolyvPlayerActivity.newIntent(getContext(), VideoDetailPolyvPlayerActivity.PlayMode.portrait,"");
|
||||
// 在线视频和下载的视频播放的时候只显示播放器窗口,用该参数来控制
|
||||
intent4.putExtra("startNow", false);
|
||||
intent4.putExtra("isVlmsOnline", false);
|
||||
intent4.putExtra("uuid", getIntent().getData().getQueryParameter("uuid"));
|
||||
startActivity(intent4);
|
||||
|
||||
break;
|
||||
case "2"://肝胆课件
|
||||
intent.setClass(this, CourseUrlDetailActivity.class);
|
||||
intent.putExtra("url", Url.weurl.substring(0, Url.weurl.length() - 1)
|
||||
+ getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title", getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("uuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
// intent.putExtra("type", weBean.getType());
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "3"://肝胆新闻
|
||||
intent.setClass(this, NewsDetailActivity.class);
|
||||
intent.putExtra("url", Url.urlHtml + getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title", "新闻详情");
|
||||
intent.putExtra("newsuuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("newsagreenum", getIntent().getData().getQueryParameter("agreenum"));
|
||||
intent.putExtra("newsreadnum", getIntent().getData().getQueryParameter("readnum"));
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("summary",getIntent().getData().getQueryParameter("summary"));
|
||||
intent.putExtra("imageUrl", Url.urlHtml +getIntent().getData().getQueryParameter("headImg"));
|
||||
intent.putExtra("flag", 3);
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "4"://科研项目
|
||||
intent.setClass(this, NewsDetailActivity.class);
|
||||
intent.putExtra("url", Url.urlHtml + getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title", "科研详情");
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("projectName"));
|
||||
intent.putExtra("summary", getIntent().getData().getQueryParameter("content"));
|
||||
intent.putExtra("imageUrl", Url.urlHtml +getIntent().getData().getQueryParameter("imgs"));
|
||||
intent.putExtra("flag", 1);
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "5"://肝胆活动
|
||||
intent.setClass(this, GDEventDetailTopActivity.class);
|
||||
intent.putExtra("uuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("url",Url.urlHtml +getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("summary",getIntent().getData().getQueryParameter("content"));
|
||||
intent.putExtra("imageUrl", Url.urlHtml
|
||||
+ getIntent().getData().getQueryParameter("imgpath"));
|
||||
intent.setType("event");
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "6"://病例荟萃
|
||||
intent.setClass(this, NewsDetailActivity.class);
|
||||
intent.putExtra("url",Url.urlHtml+getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title","病例详情");
|
||||
intent.putExtra("collect",getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("newsTitle",getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("type", 7);
|
||||
intent.putExtra("nfagreenum", getIntent().getData().getQueryParameter("agreeNum")+"");
|
||||
intent.putExtra("nfreadnum", getIntent().getData().getQueryParameter("readNum")+"");
|
||||
intent.putExtra("nfsuuuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("npath", getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("flag", 10);
|
||||
startActivity(intent);
|
||||
// startActivityForResult(intent, 113);
|
||||
break;
|
||||
case "11"://查房实录
|
||||
intent.setClass(this, NewsDetailActivity.class);
|
||||
intent.putExtra("url",Url.urlHtml+getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title","病例详情");
|
||||
intent.putExtra("collect",getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("newsTitle",getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("nfagreenum", getIntent().getData().getQueryParameter("agreeNum")+"");
|
||||
intent.putExtra("nfreadnum", getIntent().getData().getQueryParameter("readNum")+"");
|
||||
intent.putExtra("nfsuuuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("npath", getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("flag", 6);
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "7"://肝胆会议
|
||||
// intent.setClass(this, ZhiBoActivity.class);直播页面
|
||||
// intent.putExtra("newsTitle",getIntent().getData().getQueryParameter("title"));
|
||||
// intent.putExtra("url",getIntent().getData().getQueryParameter("liveurl"));
|
||||
// intent.putExtra("summary",getIntent().getData().getQueryParameter("liveimg"));
|
||||
// intent.setType("zhibo");
|
||||
// startActivity(intent);
|
||||
intent.setClass(this, GDEventDetailActivity.class);
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("url", weurl+getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("summary", getIntent().getData().getQueryParameter("content"));
|
||||
intent.setType("meeting");
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "8"://患教文库
|
||||
intent.setClass(this, NewsDetailActivity.class);
|
||||
intent.putExtra("url", Url.urlHtml + getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("title", "患教详情");
|
||||
intent.putExtra("kepuuuid", getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("kepuagreenum", getIntent().getData().getQueryParameter("agreenum"));
|
||||
intent.putExtra("kepureadnum", getIntent().getData().getQueryParameter("readnum"));
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("topic"));
|
||||
intent.putExtra("summary", getIntent().getData().getQueryParameter("summary"));
|
||||
intent.putExtra("imageUrl", Url.urlHtml +getIntent().getData().getQueryParameter("imgPath"));
|
||||
intent.putExtra("flag", 2);
|
||||
startActivity(intent);
|
||||
break;
|
||||
case "9"://患教视频
|
||||
Intent intent1 = VideoDetailPolyvPlayerActivity.newIntent(getContext(), VideoDetailPolyvPlayerActivity.PlayMode.portrait,"");
|
||||
// 在线视频和下载的视频播放的时候只显示播放器窗口,用该参数来控制
|
||||
intent1.putExtra("startNow", false);
|
||||
intent1.putExtra("isVlmsOnline", false);
|
||||
intent1.putExtra("url",getIntent().getData().getQueryParameter("path"));
|
||||
intent1.putExtra("uuid",getIntent().getData().getQueryParameter("uuid"));
|
||||
intent1.putExtra("note", getIntent().getData().getQueryParameter("content"));
|
||||
intent1.putExtra("title", getIntent().getData().getQueryParameter("title"));
|
||||
intent1.putExtra("readnum", getIntent().getData().getQueryParameter("readnum"));
|
||||
intent1.putExtra("imgpath", getIntent().getData().getQueryParameter("imgpath"));
|
||||
intent1.putExtra("need_inside_share", "yes");
|
||||
intent1.putExtra("public_name", getIntent().getData().getQueryParameter("public_name"));
|
||||
startActivity(intent1);
|
||||
|
||||
break;
|
||||
case "10"://临床招募
|
||||
intent.setClass(this, GDEventDetailTopActivity.class);
|
||||
intent.putExtra("uuid", getIntent().getData().getQueryParameter("uuid"));
|
||||
intent.putExtra("url", Url.urlHtml +getIntent().getData().getQueryParameter("path"));
|
||||
intent.putExtra("newsTitle", getIntent().getData().getQueryParameter("title"));
|
||||
intent.putExtra("mobile", getIntent().getData().getQueryParameter("mobile"));
|
||||
intent.putExtra("summary", getIntent().getData().getQueryParameter("content"));
|
||||
intent.putExtra("imageUrl", Url.urlHtml
|
||||
+ getIntent().getData().getQueryParameter("imgpath"));
|
||||
intent.setType("linchaung");
|
||||
startActivity(intent);
|
||||
break;
|
||||
|
||||
}
|
||||
} else {
|
||||
// 打开登录
|
||||
Intent intent = new Intent();
|
||||
intent.setClass(this, LoginNewActivity.class);
|
||||
startActivity(intent);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
intent=null;
|
||||
finish();
|
||||
// Intent intent = new Intent(this, WebActivity.class);
|
||||
// intent.putExtra("url",extInfo);
|
||||
// intent.putExtras(getIntent());
|
||||
// startActivity(intent);
|
||||
// finish();
|
||||
//Handle...
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user