Commit e73d3985 by 刘鹏

feat: 分享图片UI调整,webview代码整理

parent d8f6c0ea
...@@ -14,7 +14,7 @@ buildscript { ...@@ -14,7 +14,7 @@ buildscript {
ydlrouter_version = '1.2.3' ydlrouter_version = '1.2.3'
constrait_support_version = '1.0.2' constrait_support_version = '1.0.2'
componentVersion = "0.3.0.49.2-SNAPSHOT" componentVersion = "0.3.0.49.3-SNAPSHOT"
} }
repositories { repositories {
mavenCentral() mavenCentral()
......
...@@ -13,9 +13,8 @@ ...@@ -13,9 +13,8 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_above="@+id/ll_share" android:layout_above="@+id/ll_share"
android:layout_marginStart="68dp" android:layout_marginStart="42dp"
android:layout_marginEnd="68dp" android:layout_marginEnd="42dp"
android:layout_marginBottom="-25dp"
android:clickable="true" android:clickable="true"
android:visibility="gone" android:visibility="gone"
app:cardCornerRadius="10dp" app:cardCornerRadius="10dp"
......
...@@ -204,7 +204,7 @@ class ShareMeditationDialog : DialogFragment() { ...@@ -204,7 +204,7 @@ class ShareMeditationDialog : DialogFragment() {
fun newInstance( fun newInstance(
isDarkMode: Boolean, shareUrl: String, shareTitle: String, isDarkMode: Boolean, shareUrl: String, shareTitle: String,
shareContent: String, shareCover: String, miniId: String, miniPath: String shareContent: String, shareCover: String, miniId: String?, miniPath: String?
): ShareMeditationDialog { ): ShareMeditationDialog {
val args = Bundle() val args = Bundle()
args.putBoolean(KEY_SHARE_DARK_MODE, isDarkMode) args.putBoolean(KEY_SHARE_DARK_MODE, isDarkMode)
......
...@@ -26,6 +26,8 @@ import android.widget.ImageView; ...@@ -26,6 +26,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.PopupWindow; import android.widget.PopupWindow;
import androidx.core.content.ContextCompat;
import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter; import com.alibaba.android.arouter.launcher.ARouter;
import com.tencent.smtt.export.external.interfaces.JsResult; import com.tencent.smtt.export.external.interfaces.JsResult;
...@@ -50,7 +52,7 @@ import com.ydl.ydlcommon.base.BaseApp; ...@@ -50,7 +52,7 @@ import com.ydl.ydlcommon.base.BaseApp;
import com.ydl.ydlcommon.bean.ShareData; import com.ydl.ydlcommon.bean.ShareData;
import com.ydl.ydlcommon.bean.StatusBarOptions; import com.ydl.ydlcommon.bean.StatusBarOptions;
import com.ydl.ydlcommon.event.MeditationEvent; import com.ydl.ydlcommon.event.MeditationEvent;
import com.ydl.ydlcommon.modular.ModularServiceManager; import com.ydl.ydlcommon.modular.ModularServiceManagerKt;
import com.ydl.ydlcommon.ui.LogoLoadingView; import com.ydl.ydlcommon.ui.LogoLoadingView;
import com.ydl.ydlcommon.utils.ActivityManager; import com.ydl.ydlcommon.utils.ActivityManager;
import com.ydl.ydlcommon.utils.BuryPointUtils; import com.ydl.ydlcommon.utils.BuryPointUtils;
...@@ -100,13 +102,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -100,13 +102,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
/*** 路由传递过来的参数*/ /*** 路由传递过来的参数*/
public static final String ROUTER_PARAMS = "routerParam"; public static final String ROUTER_PARAMS = "routerParam";
/***下单选择时间请求吗*/
public static final int ORDER_TIME_REQUEST_CODE = 110;
/***启动类型 0正常模式 1从下至上打开页面*/ /***启动类型 0正常模式 1从下至上打开页面*/
private int startType = 0; private int startType = 0;
/***右侧按钮文字*/
private String rightText = "";
protected TitleBar tb_title; protected TitleBar tb_title;
protected View tb_title_cover_v; protected View tb_title_cover_v;
...@@ -122,14 +119,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -122,14 +119,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
protected String shareTitle; protected String shareTitle;
protected String shareDesc; protected String shareDesc;
private String cover; private String cover;
private String miniId; // 评价2.0新增字段 区分评价列表
private String miniPath;
// 评价2.0新增字段 区分评价列表
private H5JsBean.H5JsCmd.Params paramsForCommentList; private H5JsBean.H5JsCmd.Params paramsForCommentList;
private boolean isShareCommentList; private boolean isShareCommentList;
private boolean isDarkMode = false;
private ShareMeditationDialog shareMeditationDialog; private ShareMeditationDialog shareMeditationDialog;
private ArticleDialogFragment commentArticleDialog; private ArticleDialogFragment commentArticleDialog;
...@@ -154,7 +147,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -154,7 +147,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
private long initDuration = 0; private long initDuration = 0;
/***加载url耗时*/ /***加载url耗时*/
private long loadDuration = 0; private long loadDuration = 0;
private NetWorkSpeedUtils workSpeedUtils;
/***部分机型中webview加载完成回调方法会调用多次,增加本地标识符*/ /***部分机型中webview加载完成回调方法会调用多次,增加本地标识符*/
private boolean hasLoad = false; private boolean hasLoad = false;
/***是否跳转到动态*/ /***是否跳转到动态*/
...@@ -162,24 +154,22 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -162,24 +154,22 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
private LogoLoadingView v_loading; private LogoLoadingView v_loading;
/***是否超时*/ /***是否超时*/
private boolean isTimeOut = false;
/***超时处理handler*/ /***超时处理handler*/
private Handler mTimeOutHandler = null; private Handler mTimeOutHandler = null;
/***超时限定时间*/ /***超时限定时间*/
private int timeOutLong = 15000; private final int TIME_OUT_LONG = 15000;
/***超时消息*/ /***超时消息*/
private int TIME_OUT_TYPE = 0x1000; private final int TIME_OUT_TYPE = 0x1000;
/** /**
* 设置微信 H5 支付调用 loadDataWithBaseURL 的标记位,避免循环调用, * 设置微信 H5 支付调用 loadDataWithBaseURL 的标记位,避免循环调用,
* 再次进入微信 H5 支付流程时记得重置此标记位状态 * 再次进入微信 H5 支付流程时记得重置此标记位状态
*/ */
boolean firstVisitWXH5PayUrl = true; boolean firstVisitWXH5PayUrl = true;
private String WX_H5_PAY_HOST = "http://testnewm.ydl.com";
/*** 当前页面类型*/ /*** 当前页面类型*/
private int selfPageType = -1; private int selfPageType = -1;
/***测评题页面*/ /***测评题页面*/
private int TEST_QUESTIONS_PAGE_TYPE = 1000001; private final int TEST_QUESTIONS_PAGE_TYPE = 1000001;
private YDLCommonDialog testQuestionsPageReturnDialog = null; private YDLCommonDialog testQuestionsPageReturnDialog = null;
/*** 标题栏是否被覆盖隐藏*/ /*** 标题栏是否被覆盖隐藏*/
...@@ -189,7 +179,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -189,7 +179,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
/** /**
* 设置当前h5页面类型 * 设置当前h5页面类型
* *
* @param pageType * @param pageType h5页面类型
*/ */
public void setSelfPageType(int pageType) { public void setSelfPageType(int pageType) {
selfPageType = pageType; selfPageType = pageType;
...@@ -304,7 +294,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -304,7 +294,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
private void initTimeOutHandler() { private void initTimeOutHandler() {
mTimeOutHandler = new Handler(msg -> { mTimeOutHandler = new Handler(msg -> {
if (wv_content.getProgress() < 100) { if (wv_content.getProgress() < 100) {
isTimeOut = true;
llWebView.setVisibility(View.GONE); llWebView.setVisibility(View.GONE);
v_loading.setVisibility(View.VISIBLE); v_loading.setVisibility(View.VISIBLE);
...@@ -320,7 +309,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -320,7 +309,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
*/ */
private void sendNetLossMessage() { private void sendNetLossMessage() {
if (null != mTimeOutHandler) { if (null != mTimeOutHandler) {
mTimeOutHandler.sendEmptyMessageDelayed(TIME_OUT_TYPE, timeOutLong); mTimeOutHandler.sendEmptyMessageDelayed(TIME_OUT_TYPE, TIME_OUT_LONG);
} }
} }
...@@ -341,7 +330,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -341,7 +330,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
@Override @Override
public void onDataResetClick() { public void onDataResetClick() {
sendNetLossMessage(); sendNetLossMessage();
isTimeOut = false;
llWebView.setVisibility(View.VISIBLE); llWebView.setVisibility(View.VISIBLE);
v_loading.setVisibility(View.VISIBLE); v_loading.setVisibility(View.VISIBLE);
v_loading.setViewType(LogoLoadingView.TYPE_LOADING, null); v_loading.setViewType(LogoLoadingView.TYPE_LOADING, null);
...@@ -388,12 +376,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -388,12 +376,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
tellData = new TellData(); tellData = new TellData();
} }
initView(); initView();
if (!BaseApp.instance.getGlobalConfig().getAppDebug()&& ProxyCheckUtils.INSTANCE.isWifiProxy(this)){ if (!BaseApp.instance.getGlobalConfig().getAppDebug() && ProxyCheckUtils.INSTANCE.isWifiProxy(this)) {
ToastUtil.toastShort("网络设置错误"); ToastUtil.toastShort("网络设置错误");
return; return;
} }
startType = getIntent().getIntExtra("startType", 0); startType = getIntent().getIntExtra("startType", 0);
rightText = getIntent().getStringExtra("rightText"); //右侧按钮文字
String rightText = getIntent().getStringExtra("rightText");
if (h5Params == null) { if (h5Params == null) {
ToastUtil.toastShort("参数错误"); ToastUtil.toastShort("参数错误");
AliYunRichLogsHelper.Companion.getInstance().sendRichLog(AliYunLogConfig.WEB, "参数错误 Params == null"); AliYunRichLogsHelper.Companion.getInstance().sendRichLog(AliYunLogConfig.WEB, "参数错误 Params == null");
...@@ -410,14 +399,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -410,14 +399,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
tb_title.setImageVis(0); tb_title.setImageVis(0);
tb_title.setLeftTextVisible(View.GONE); tb_title.setLeftTextVisible(View.GONE);
tb_title.setmRightText(rightText); tb_title.setmRightText(rightText);
tb_title.setOnRightTextClick((view, isActive) -> { tb_title.setOnRightTextClick((view, isActive) -> finish());
finish();
});
} else if (!TextUtils.isEmpty(rightText) && webRightClickListener != null) { } else if (!TextUtils.isEmpty(rightText) && webRightClickListener != null) {
tb_title.setmRightText(rightText); tb_title.setmRightText(rightText);
tb_title.setOnRightTextClick((view, isActive) -> { tb_title.setOnRightTextClick((view, isActive) -> webRightClickListener.onCLick(view));
webRightClickListener.onCLick(view);
});
} }
llWebView = findViewById(R.id.ll_web_view); llWebView = findViewById(R.id.ll_web_view);
initLoadingView(); initLoadingView();
...@@ -436,7 +421,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -436,7 +421,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
//再次替换 方哥那边解决不了域名的问题 app中强行匹配修改 //再次替换 方哥那边解决不了域名的问题 app中强行匹配修改
if (url.contains("fe-app-yidianling")) { if (url.contains("fe-app-yidianling")) {
int index = url.indexOf("course/Detail"); int index = url.indexOf("course/Detail");
String newUrl = url.substring(index, url.length()); String newUrl = url.substring(index);
if (url.contains("test")) { if (url.contains("test")) {
newUrl = "https://testnewm.ydl.com/" + newUrl; newUrl = "https://testnewm.ydl.com/" + newUrl;
} else { } else {
...@@ -453,8 +438,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -453,8 +438,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
/** /**
* 专家详情页改版 需要url后面拼接状态栏高度 并且隐藏导航栏 * 专家详情页改版 需要url后面拼接状态栏高度 并且隐藏导航栏
* *
* @param url * @param url 页面地址
* @return * @return 拼接状态栏高度的url
*/ */
private String setUrlHeightParams(String url) { private String setUrlHeightParams(String url) {
String resultUrl = url; String resultUrl = url;
...@@ -480,12 +465,12 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -480,12 +465,12 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
showTitleBar(); showTitleBar();
return jumpUrl; return jumpUrl;
} }
String useUrl = new StringBuffer().append(jumpUrl).toString(); StringBuilder useUrl = new StringBuilder(jumpUrl);
Resources res = getResources(); Resources res = getResources();
String[] doctorUrlArray = res.getStringArray(R.array.platform_doctorUrls); String[] doctorUrlArray = res.getStringArray(R.array.platform_doctorUrls);
for (String url : doctorUrlArray) { for (String url : doctorUrlArray) {
if (useUrl.contains(url)) { if (useUrl.toString().contains(url)) {
String lastUrl = useUrl.replaceAll(url, ""); String lastUrl = useUrl.toString().replaceAll(url, "");
if (lastUrl.contains("?")) { if (lastUrl.contains("?")) {
lastUrl = lastUrl.substring(0, lastUrl.indexOf("?")); lastUrl = lastUrl.substring(0, lastUrl.indexOf("?"));
} }
...@@ -493,14 +478,14 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -493,14 +478,14 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
//不报错就说明可以转成long,就说明是专家详情页地址 //不报错就说明可以转成long,就说明是专家详情页地址
Long.parseLong(lastUrl); Long.parseLong(lastUrl);
if (!lastUrl.contains("/")) { if (!lastUrl.contains("/")) {
if (useUrl.endsWith("?")) { if (useUrl.toString().endsWith("?")) {
useUrl = useUrl.substring(0, useUrl.indexOf("?")); useUrl = new StringBuilder(useUrl.substring(0, useUrl.indexOf("?")));
} }
if (!useUrl.contains("barHeight")) { if (!useUrl.toString().contains("barHeight")) {
String paramsStr = useUrl.contains("?") String paramsStr = useUrl.toString().contains("?")
? "&barHeight=" + String.valueOf(StatusBarUtils.Companion.getStatusBarHeight(NewH5Activity.this)) ? "&barHeight=" + StatusBarUtils.Companion.getStatusBarHeight(NewH5Activity.this)
: "?barHeight=" + String.valueOf(StatusBarUtils.Companion.getStatusBarHeight(NewH5Activity.this)); : "?barHeight=" + StatusBarUtils.Companion.getStatusBarHeight(NewH5Activity.this);
useUrl = new StringBuffer().append(useUrl).append(paramsStr).toString(); useUrl.append(paramsStr);
} }
hideJavaTitleBar(); hideJavaTitleBar();
} }
...@@ -509,7 +494,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -509,7 +494,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
} }
} }
return useUrl; return useUrl.toString();
} }
public void hasShowDownRefresh(boolean isVisible) { public void hasShowDownRefresh(boolean isVisible) {
...@@ -531,7 +516,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -531,7 +516,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
cover = params.getShare().getCover(); cover = params.getShare().getCover();
paramsForCommentList = params; paramsForCommentList = params;
LogUtil.d("title: " + shareTitle + " url: " + shareUrl + " desc: " + shareDesc + " cover: " + cover); LogUtil.d("title: " + shareTitle + " url: " + shareUrl + " desc: " + shareDesc + " cover: " + cover);
new Handler(getMainLooper()).post(() -> initShareMenu()); new Handler(getMainLooper()).post(this::initShareMenu);
} }
} }
...@@ -546,22 +531,22 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -546,22 +531,22 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
public void openShareMenu(H5JsBean.H5JsCmd.Params params) { public void openShareMenu(H5JsBean.H5JsCmd.Params params) {
if (params.getShare() != null) { if (params.getShare() != null) {
if ("Meditation".equals(params.getShare().getType())){ if ("Meditation".equals(params.getShare().getType())) {
shareUrl = params.getShare().getShare_url(); shareUrl = params.getShare().getShare_url();
shareTitle = params.getShare().getTitle(); shareTitle = params.getShare().getTitle();
shareDesc = params.getShare().getDesc(); shareDesc = params.getShare().getDesc();
cover = params.getShare().getCover(); cover = params.getShare().getCover();
miniId = params.getShare().getMinProgramId(); String miniId = params.getShare().getMinProgramId();
miniPath = params.getShare().getMinProgramPath(); String miniPath = params.getShare().getMinProgramPath();
isDarkMode = params.getShare().isDarkMode(); boolean isDarkMode = params.getShare().isDarkMode();
if (shareMeditationDialog == null) { if (shareMeditationDialog == null) {
shareMeditationDialog = ShareMeditationDialog.Companion.newInstance(isDarkMode, shareMeditationDialog = ShareMeditationDialog.Companion.newInstance(isDarkMode,
shareUrl, shareTitle, shareDesc, cover, miniId, miniPath); shareUrl, shareTitle, shareDesc, cover, miniId, miniPath);
} }
if (shareMeditationDialog != null && !shareMeditationDialog.isAdded()) { if (!shareMeditationDialog.isAdded()) {
shareMeditationDialog.show(getSupportFragmentManager(), "share_meditation"); shareMeditationDialog.show(getSupportFragmentManager(), "share_meditation");
} }
}else { } else {
purl = params.getShare().getUrl(); purl = params.getShare().getUrl();
shareUrl = params.getShare().getShare_url(); shareUrl = params.getShare().getShare_url();
shareTitle = params.getShare().getTitle(); shareTitle = params.getShare().getTitle();
...@@ -576,13 +561,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -576,13 +561,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
private void initView() { private void initView() {
tb_title = (TitleBar) findViewById(R.id.tb_title); tb_title = findViewById(R.id.tb_title);
tb_title_cover_v = (View) findViewById(R.id.tb_title_cover_v); tb_title_cover_v = findViewById(R.id.tb_title_cover_v);
tb_title.setPaddingLeft(10); tb_title.setPaddingLeft(10);
wv_content = (ProgressWebView) findViewById(R.id.wv_content); wv_content = findViewById(R.id.wv_content);
backgroundView = findViewById(R.id.iv_background); backgroundView = findViewById(R.id.iv_background);
store_house_ptr_frame = (PtrFrameLayout) findViewById(R.id.store_house_ptr_frame); store_house_ptr_frame = findViewById(R.id.store_house_ptr_frame);
safeTipView = (SafeTipView) findViewById(R.id.safe_tip_view); safeTipView = findViewById(R.id.safe_tip_view);
if (h5Params != null && h5Params.isControlBack()) { if (h5Params != null && h5Params.isControlBack()) {
store_house_ptr_frame.setEnabled(false); store_house_ptr_frame.setEnabled(false);
...@@ -596,9 +581,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -596,9 +581,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
runOnUiThread(() -> { runOnUiThread(() -> {
tb_title.setVisibility(View.GONE); tb_title.setVisibility(View.GONE);
if (null != getStatusView()) { if (null != getStatusView()) {
if (selfPageType == TEST_QUESTIONS_PAGE_TYPE) {
//测评题隐藏标题的时候,不隐藏状态栏 //测评题隐藏标题的时候,不隐藏状态栏
} else { if (selfPageType != TEST_QUESTIONS_PAGE_TYPE) {
getStatusView().setVisibility(View.GONE); getStatusView().setVisibility(View.GONE);
} }
} }
...@@ -606,9 +590,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -606,9 +590,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
public void setBottomViewColor(String color) { public void setBottomViewColor(String color) {
runOnUiThread(() -> { runOnUiThread(() -> setBottomColor(color));
setBottomColor(color);
});
} }
public void showTitleBar() { public void showTitleBar() {
...@@ -623,16 +605,12 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -623,16 +605,12 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
//js修改UI的操作需要放在UI线程中更新,覆盖标题 //js修改UI的操作需要放在UI线程中更新,覆盖标题
public void coverJavaTitleBar() { public void coverJavaTitleBar() {
isTitleBarCover = true; isTitleBarCover = true;
runOnUiThread(() -> { runOnUiThread(() -> tb_title_cover_v.setVisibility(VISIBLE));
tb_title_cover_v.setVisibility(VISIBLE);
});
} }
public void notCoverTitleBar() { public void notCoverTitleBar() {
isTitleBarCover = false; isTitleBarCover = false;
runOnUiThread(() -> { runOnUiThread(() -> tb_title_cover_v.setVisibility(GONE));
tb_title_cover_v.setVisibility(GONE);
});
} }
public void closeWebKit() { public void closeWebKit() {
...@@ -660,7 +638,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -660,7 +638,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
if (!TextUtils.isEmpty(h5Params.getTitle()) && !h5Params.getShowUrlTitle()) { if (!TextUtils.isEmpty(h5Params.getTitle()) && !h5Params.getShowUrlTitle()) {
tb_title.setTitle(h5Params.getTitle()); tb_title.setTitle(h5Params.getTitle());
} }
tb_title.setImage(getResources().getDrawable(R.drawable.web_common_back)); tb_title.setImage(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_back));
WebSettings setting = wv_content.getSettings(); WebSettings setting = wv_content.getSettings();
//支持js //支持js
...@@ -687,14 +665,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -687,14 +665,13 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
tb_title.setImageListener(v -> { tb_title.setImageListener(v -> {
if (h5Params.isSplash()) { if (h5Params.isSplash()) {
WebModularServiceUtils.Companion.startMain(NewH5Activity.this); WebModularServiceUtils.Companion.startMain(NewH5Activity.this);
finish();
} else { } else {
if (ActivityManager.Companion.getInstance().getActivitys().size() == 1) { if (ActivityManager.Companion.getInstance().getActivitys().size() == 1) {
WebModularServiceUtils.Companion.startMain(NewH5Activity.this); WebModularServiceUtils.Companion.startMain(NewH5Activity.this);
} }
finish();
} }
finish();
}); });
if (startType != 1) { if (startType != 1) {
tb_title.setImageVis(1); tb_title.setImageVis(1);
...@@ -724,7 +701,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -724,7 +701,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
@Override @Override
public void onReceivedTitle(WebView view, String title) { public void onReceivedTitle(WebView view, String title) {
super.onReceivedTitle(view, title); super.onReceivedTitle(view, title);
if (TextUtils.isEmpty(h5Params.getTitle())){ if (TextUtils.isEmpty(h5Params.getTitle())) {
tb_title.setTitle(title); tb_title.setTitle(title);
} }
wv_content.setTitle(title); wv_content.setTitle(title);
...@@ -739,26 +716,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -739,26 +716,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
} }
// For Android < 3.0
public void openFileChooser(ValueCallback<Uri> valueCallback) {
uploadMessage = valueCallback;
openImageChooserActivity();
}
// For Android >= 3.0
public void openFileChooser(ValueCallback valueCallback, String acceptType) {
uploadMessage = valueCallback;
openImageChooserActivity();
}
//For Android >= 4.1
@Override
public void openFileChooser(ValueCallback<Uri> valueCallback, String acceptType, String capture) {
uploadMessage = valueCallback;
openImageChooserActivity();
}
// For Android >= 5.0
@Override @Override
public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) { public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) {
uploadMessageAboveL = filePathCallback; uploadMessageAboveL = filePathCallback;
...@@ -781,7 +738,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -781,7 +738,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
if (!TextUtils.isEmpty(url) && url.endsWith(".apk")) { if (!TextUtils.isEmpty(url) && url.endsWith(".apk")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent); startActivity(intent);
} else if (url.startsWith("tel://")){ } else if (url.startsWith("tel://")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent); startActivity(intent);
} else if (!TextUtils.isEmpty(url) && url.startsWith("http")) { } else if (!TextUtils.isEmpty(url) && url.startsWith("http")) {
...@@ -806,7 +763,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -806,7 +763,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
hasLoad = true; hasLoad = true;
loadDuration = System.currentTimeMillis() - loadStartTime; loadDuration = System.currentTimeMillis() - loadStartTime;
LogUtil.e("initDuration:" + initDuration + ",loadDuration:" + loadDuration); LogUtil.e("initDuration:" + initDuration + ",loadDuration:" + loadDuration);
// UploadWebViewTimeUtils.Companion.uploadWebViewTime(h5Params.getUrl(), initDuration + "", loadDuration + "", workSpeedUtils.getNetSpeed());
} }
if (shouldClearHistory) { if (shouldClearHistory) {
...@@ -867,11 +823,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -867,11 +823,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
if (!TextUtils.isEmpty(url) && url.endsWith(".apk")) { if (!TextUtils.isEmpty(url) && url.endsWith(".apk")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent); startActivity(intent);
}else if (url.startsWith("tel://")){ } else if (url.startsWith("tel://")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent); startActivity(intent);
} } else if (!TextUtils.isEmpty(url) && url.startsWith("http")) {
else if (!TextUtils.isEmpty(url) && url.startsWith("http")) {
loadUrl(setUrlHeightParams(url)); loadUrl(setUrlHeightParams(url));
} else { } else {
if (!YDLRouterManager.Companion.router(url)) { if (!YDLRouterManager.Companion.router(url)) {
...@@ -892,7 +847,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -892,7 +847,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
hasLoad = true; hasLoad = true;
loadDuration = System.currentTimeMillis() - loadStartTime; loadDuration = System.currentTimeMillis() - loadStartTime;
LogUtil.e("initDuration:" + initDuration + ",loadDuration:" + loadDuration); LogUtil.e("initDuration:" + initDuration + ",loadDuration:" + loadDuration);
//UploadWebViewTimeUtils.Companion.uploadWebViewTime(h5Params.getUrl(), initDuration + "", loadDuration + "", workSpeedUtils.getNetSpeed());
} }
if (shouldClearHistory) { if (shouldClearHistory) {
...@@ -909,27 +863,23 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -909,27 +863,23 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
finish(); finish();
} }
}); });
if (startType != 1) {
tb_title.setImageVis(1);
}
} else { } else {
tb_title.setImage(getResources().getDrawable(R.drawable.web_common_back)); tb_title.setImage(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_back));
tb_title.setmLeftText(""); tb_title.setmLeftText("");
tb_title.setImageListener(v -> { tb_title.setImageListener(v -> {
if (h5Params.getShowUrlTitle()) { if (h5Params.getShowUrlTitle()) {
WebModularServiceUtils.Companion.startMain(NewH5Activity.this); WebModularServiceUtils.Companion.startMain(NewH5Activity.this);
finish();
} else { } else {
if (ActivityManager.Companion.getInstance().getActivitys().size() == 1) { if (ActivityManager.Companion.getInstance().getActivitys().size() == 1) {
WebModularServiceUtils.Companion.startMain(NewH5Activity.this); WebModularServiceUtils.Companion.startMain(NewH5Activity.this);
} }
finish();
} }
finish();
}); });
}
if (startType != 1) { if (startType != 1) {
tb_title.setImageVis(1); tb_title.setImageVis(1);
} }
}
if (!loadFailed) { if (!loadFailed) {
v_loading.setVisibility(View.GONE); v_loading.setVisibility(View.GONE);
...@@ -975,7 +925,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -975,7 +925,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
}); });
initDuration = System.currentTimeMillis() - initStartTime; initDuration = System.currentTimeMillis() - initStartTime;
workSpeedUtils = new NetWorkSpeedUtils(this); NetWorkSpeedUtils workSpeedUtils = new NetWorkSpeedUtils(this);
workSpeedUtils.startNetSpeed(); workSpeedUtils.startNetSpeed();
loadStartTime = System.currentTimeMillis(); loadStartTime = System.currentTimeMillis();
loadUrl(h5Params.getUrl()); loadUrl(h5Params.getUrl());
...@@ -1005,11 +955,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1005,11 +955,6 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
} }
// 处理普通 http 请求跳转
// if (!(url.startsWith("http") || url.startsWith("https"))) {
// return true;
// }
// 处理微信 H5 支付跳转时验证请求头 referer 失效 // 处理微信 H5 支付跳转时验证请求头 referer 失效
// 验证不通过会出现“商家参数格式有误,请联系商家解决” // 验证不通过会出现“商家参数格式有误,请联系商家解决”
if (url.contains("wx.tenpay.com")) { if (url.contains("wx.tenpay.com")) {
...@@ -1059,7 +1004,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1059,7 +1004,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
private void initShareMenu() { private void initShareMenu() {
tb_title.setRightIcon(getResources().getDrawable(R.drawable.web_common_share)); tb_title.setRightIcon(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_share));
tb_title.setOnRightTextClick((view, isActive) -> { tb_title.setOnRightTextClick((view, isActive) -> {
ShareData shareData = paramsForCommentList.getShare(); ShareData shareData = paramsForCommentList.getShare();
if (shareData != null && "commentList".equals(shareData.getType())) { if (shareData != null && "commentList".equals(shareData.getType())) {
...@@ -1161,7 +1106,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1161,7 +1106,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
private void initHead() { private void initHead() {
// header // header
final MaterialHeader header = new MaterialHeader(this); final MaterialHeader header = new MaterialHeader(this);
int[] colors = new int[]{getResources().getColor(R.color.platform_main_theme)}; int[] colors = new int[]{ContextCompat.getColor(NewH5Activity.this, R.color.platform_main_theme)};
header.setColorSchemeColors(colors); header.setColorSchemeColors(colors);
header.setLayoutParams(new PtrFrameLayout.LayoutParams(-1, -2)); header.setLayoutParams(new PtrFrameLayout.LayoutParams(-1, -2));
int padding = (int) getResources().getDimension(R.dimen.platform_default_dis_size); int padding = (int) getResources().getDimension(R.dimen.platform_default_dis_size);
...@@ -1207,11 +1152,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1207,11 +1152,8 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} else { } else {
wv_content.goBack(); wv_content.goBack();
} }
if (startType != 1) {
tb_title.setImageVis(1);
}
} else { } else {
tb_title.setImage(getResources().getDrawable(R.drawable.web_common_back)); tb_title.setImage(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_back));
tb_title.setmLeftText(""); tb_title.setmLeftText("");
if ("top".equals(type)) { if ("top".equals(type)) {
setTitle(wv_content.getTitle()); setTitle(wv_content.getTitle());
...@@ -1227,7 +1169,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1227,7 +1169,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
} }
}); });
} else { } else {
if (h5Params.getUrl()!=null && h5Params.getUrl().contains("user/payment/detail")){ if (h5Params.getUrl() != null && h5Params.getUrl().contains("user/payment/detail")) {
//付款详情页 付款详情页_返回点击 //付款详情页 付款详情页_返回点击
ActionCountUtils.Companion.count("consult_order_pay_details_page|return_click"); ActionCountUtils.Companion.count("consult_order_pay_details_page|return_click");
} }
...@@ -1241,10 +1183,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1241,10 +1183,10 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
finish(); finish();
} }
} }
}
if (startType != 1) { if (startType != 1) {
tb_title.setImageVis(1); tb_title.setImageVis(1);
} }
}
} }
...@@ -1365,7 +1307,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1365,7 +1307,7 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
* 新用户侧滑按钮限制 * 新用户侧滑按钮限制
*/ */
if (h5Params.getBackLimit() != null && h5Params.getBackLimit() == H5Params.BackLimit.NEW_USER_PAGE) { if (h5Params.getBackLimit() != null && h5Params.getBackLimit() == H5Params.BackLimit.NEW_USER_PAGE) {
ModularServiceManager.INSTANCE.provide(IAppService.class).mainIntent(this); ModularServiceManagerKt.findRouteService(IAppService.class).mainIntent(this);
return true; return true;
} }
...@@ -1426,9 +1368,9 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1426,9 +1368,9 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
if (h5Params.isShowMenu()) { if (h5Params.isShowMenu()) {
try { try {
if (WebModularServiceUtils.Companion.getImService().isHasUnread()) { if (WebModularServiceUtils.Companion.getImService().isHasUnread()) {
tb_title.setImage_right(getResources().getDrawable(R.drawable.web_common_notice_more_en)); tb_title.setImage_right(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_notice_more_en));
} else { } else {
tb_title.setImage_right(getResources().getDrawable(R.drawable.web_common_notice_more_un)); tb_title.setImage_right(ContextCompat.getDrawable(NewH5Activity.this, R.drawable.web_common_notice_more_un));
} }
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
...@@ -1465,9 +1407,9 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1465,9 +1407,9 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
//如果未引入动态模块的话,隐藏分享至动态按钮 //如果未引入动态模块的话,隐藏分享至动态按钮
dialog = YDLShareDialog.Companion.style4(this, shareTitle, shareUrl, shareDesc, cover); dialog = YDLShareDialog.Companion.style4(this, shareTitle, shareUrl, shareDesc, cover);
} else { } else {
if (isShareCommentList){ if (isShareCommentList) {
dialog = YDLShareDialog.Companion.style7(this, shareTitle, shareUrl, shareDesc, cover, minPath, minId); dialog = YDLShareDialog.Companion.style7(this, shareTitle, shareUrl, shareDesc, cover, minPath, minId);
}else { } else {
dialog = YDLShareDialog.Companion.style1(this, shareTitle, shareUrl, shareDesc, cover, minPath, minId); dialog = YDLShareDialog.Companion.style1(this, shareTitle, shareUrl, shareDesc, cover, minPath, minId);
} }
} }
...@@ -1531,38 +1473,35 @@ public class NewH5Activity extends BaseActivity implements PtrHandler { ...@@ -1531,38 +1473,35 @@ public class NewH5Activity extends BaseActivity implements PtrHandler {
public void switchSound(int mediaId, long meditationId, int meditationType, int businessType, public void switchSound(int mediaId, long meditationId, int meditationType, int businessType,
String buried, String mediaUrl, String mediaCoverUrl, String buried, String mediaUrl, String mediaCoverUrl,
String title, String desc, int status){ String title, String desc, int status) {
MeditationEvent event = new MeditationEvent( MeditationEvent event = new MeditationEvent(
mediaId,meditationId,meditationType,businessType, mediaId, meditationId, meditationType, businessType,
status,buried,mediaUrl,mediaCoverUrl,title,desc); status, buried, mediaUrl, mediaCoverUrl, title, desc);
EventBus.getDefault().post(event); EventBus.getDefault().post(event);
} }
public void setBG(String color,String alpha){ public void setBG(String color, String alpha) {
try { try {
store_house_ptr_frame.setBackgroundColor(Color.parseColor(color)); store_house_ptr_frame.setBackgroundColor(Color.parseColor(color));
int a = Integer.valueOf(alpha); int a = Integer.valueOf(alpha);
store_house_ptr_frame.getBackground().setAlpha(a); store_house_ptr_frame.getBackground().setAlpha(a);
}catch (Exception ex){ } catch (Exception ex) {
} }
} }
public void showCommentArticleDialog(String title){ public void showCommentArticleDialog(String title) {
if (commentArticleDialog == null) { if (commentArticleDialog == null) {
String titleStr = title==null?wv_content.getTitle():title; String titleStr = title == null ? wv_content.getTitle() : title;
commentArticleDialog = ArticleDialogFragment.newInstance(titleStr); commentArticleDialog = ArticleDialogFragment.newInstance(titleStr);
commentArticleDialog.setOnPublishListener(comment -> { commentArticleDialog.setOnPublishListener(comment -> {
callJSFunc("sendComment('"+comment+"')"); callJSFunc("sendComment('" + comment + "')");
}); });
} }
if (commentArticleDialog != null && !commentArticleDialog.isAdded()) { if (commentArticleDialog != null && !commentArticleDialog.isAdded()) {
commentArticleDialog.show(getSupportFragmentManager(), "article_comment"); commentArticleDialog.show(getSupportFragmentManager(), "article_comment");
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment