Js调用原生整改
This commit is contained in:
parent
0b041bad7b
commit
84f352a7fb
@ -1,7 +1,5 @@
|
|||||||
package com.yunbao.common.activity;
|
package com.yunbao.common.activity;
|
||||||
|
|
||||||
import static com.yunbao.common.utils.RouteUtil.PATH_ZHUANGBANACTIVITY;
|
|
||||||
|
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
import android.content.ClipboardManager;
|
import android.content.ClipboardManager;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@ -9,14 +7,9 @@ import android.content.Intent;
|
|||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
|
||||||
import androidx.annotation.RequiresApi;
|
|
||||||
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -27,17 +20,22 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
import com.alibaba.android.arouter.launcher.ARouter;
|
import androidx.annotation.RequiresApi;
|
||||||
|
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.R;
|
import com.yunbao.common.R;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.utils.AndroidBug5497Workaround;
|
import com.yunbao.common.utils.AndroidBug5497Workaround;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/9/25.
|
* Created by cxf on 2018/9/25.
|
||||||
*/
|
*/
|
||||||
@ -141,7 +139,7 @@ public class WebViewActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
mWebView.addJavascriptInterface(new JsInteration(), "androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView).setPageClose(true).setLiveZhuangBana(false), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
mWebView.getSettings().setDomStorageEnabled(true);
|
mWebView.getSettings().setDomStorageEnabled(true);
|
||||||
@ -170,76 +168,6 @@ public class WebViewActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void onBack() {
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void modifyMydata() {
|
|
||||||
indexInto = 1;
|
|
||||||
RouteUtil.forwardEditProfileActivity();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void reportUser(String touid) {
|
|
||||||
RouteUtil.forwardLiveReportActivity(touid);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void gotoHomePage(String indexStr) {
|
|
||||||
Log.e("tgasss", "indexStr4" + indexStr);
|
|
||||||
|
|
||||||
if (!"".equals(indexStr) && indexStr != null) {
|
|
||||||
int index = -1;
|
|
||||||
if ("0".equals(indexStr)) {
|
|
||||||
index = 0;
|
|
||||||
} else if ("1".equals(indexStr)) {
|
|
||||||
index = 1;
|
|
||||||
} else if ("2".equals(indexStr)) {
|
|
||||||
index = 2;
|
|
||||||
} else if ("3".equals(indexStr)) {
|
|
||||||
index = 3;
|
|
||||||
}
|
|
||||||
if (index != -1) {
|
|
||||||
finish();
|
|
||||||
Constants.isShowPage = index;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openWebView(String url) {
|
|
||||||
Constants.isTitle = false;
|
|
||||||
RouteUtil.forwardZhuangBanActivity(url);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openWebViewTitle(String url) {
|
|
||||||
Constants.isTitle = true;
|
|
||||||
RouteUtil.forwardZhuangBanActivity(url);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新跳转
|
|
||||||
*
|
|
||||||
* @param url 跳转的url
|
|
||||||
* @param title 有标题的展示标题
|
|
||||||
*/
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickToNewH5PageView(String url, String title) {
|
|
||||||
url = CommonAppConfig.HOST + url;
|
|
||||||
Log.i("tag", url);
|
|
||||||
ARouter.getInstance().build(PATH_ZHUANGBANACTIVITY)
|
|
||||||
.withString("url",url)
|
|
||||||
.withString("title", title)
|
|
||||||
.withBoolean("isFull", false)
|
|
||||||
.navigation();
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void openImageChooserActivity(ValueCallback<Uri> valueCallback) {
|
private void openImageChooserActivity(ValueCallback<Uri> valueCallback) {
|
||||||
mValueCallback = valueCallback;
|
mValueCallback = valueCallback;
|
||||||
@ -371,11 +299,10 @@ public class WebViewActivity extends AbsActivity {
|
|||||||
if (Constants.isShowPage != -1) {
|
if (Constants.isShowPage != -1) {
|
||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
// new Handler().postDelayed(new Runnable() {
|
}
|
||||||
// @Override
|
|
||||||
// public void run() {
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
// mWebView.reload();
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
// }
|
indexInto = event.getIndexInto();
|
||||||
// }, 100);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.yunbao.video.bean;
|
package com.yunbao.common.bean;
|
||||||
|
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
@ -1,4 +1,4 @@
|
|||||||
package com.yunbao.live.bean;
|
package com.yunbao.common.bean;
|
||||||
|
|
||||||
public class ReportCommunityBean {
|
public class ReportCommunityBean {
|
||||||
String dynamic_id;
|
String dynamic_id;
|
@ -1,10 +1,9 @@
|
|||||||
package com.yunbao.video.bean;
|
package com.yunbao.common.bean;
|
||||||
|
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
|
|
||||||
import com.alibaba.fastjson.annotation.JSONField;
|
import com.alibaba.fastjson.annotation.JSONField;
|
||||||
import com.yunbao.common.bean.UserBean;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2017/10/25.
|
* Created by cxf on 2017/10/25.
|
@ -0,0 +1,150 @@
|
|||||||
|
package com.yunbao.common.event;
|
||||||
|
|
||||||
|
import com.yunbao.common.bean.BaseModel;
|
||||||
|
import com.yunbao.common.bean.VideoBean;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class JavascriptInterfaceEvent extends BaseModel {
|
||||||
|
private String method = "";
|
||||||
|
private String svg = "";
|
||||||
|
private String postsId = "";
|
||||||
|
private String isClose;
|
||||||
|
private List<VideoBean> videoBeanList = new ArrayList<>();
|
||||||
|
private int position;
|
||||||
|
private String liveId;
|
||||||
|
private String userId;
|
||||||
|
private int indexInto;
|
||||||
|
private String productId;
|
||||||
|
private String orderNumber;
|
||||||
|
private String moneyUsd;
|
||||||
|
private boolean isUpdataUser;
|
||||||
|
private String data;
|
||||||
|
|
||||||
|
public String getUserId() {
|
||||||
|
return userId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setUserId(String userId) {
|
||||||
|
this.userId = userId;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getData() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setData(String data) {
|
||||||
|
this.data = data;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isUpdataUser() {
|
||||||
|
return isUpdataUser;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setUpdataUser(boolean updataUser) {
|
||||||
|
isUpdataUser = updataUser;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getProductId() {
|
||||||
|
return productId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setProductId(String productId) {
|
||||||
|
this.productId = productId;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOrderNumber() {
|
||||||
|
return orderNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setOrderNumber(String orderNumber) {
|
||||||
|
this.orderNumber = orderNumber;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMoneyUsd() {
|
||||||
|
return moneyUsd;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setMoneyUsd(String moneyUsd) {
|
||||||
|
this.moneyUsd = moneyUsd;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getIndexInto() {
|
||||||
|
return indexInto;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setIndexInto(int indexInto) {
|
||||||
|
this.indexInto = indexInto;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLiveId() {
|
||||||
|
return liveId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setLiveId(String liveId) {
|
||||||
|
this.liveId = liveId;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<VideoBean> getVideoBeanList() {
|
||||||
|
return videoBeanList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setVideoBeanList(List<VideoBean> videoBeanList) {
|
||||||
|
this.videoBeanList = videoBeanList;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getPosition() {
|
||||||
|
return position;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setPosition(int position) {
|
||||||
|
this.position = position;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIsClose() {
|
||||||
|
return isClose;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setIsClose(String isClose) {
|
||||||
|
this.isClose = isClose;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPostsId() {
|
||||||
|
return postsId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setPostsId(String postsId) {
|
||||||
|
this.postsId = postsId;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSvg() {
|
||||||
|
return svg;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setSvg(String svg) {
|
||||||
|
this.svg = svg;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMethod() {
|
||||||
|
return method;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceEvent setMethod(String method) {
|
||||||
|
this.method = method;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package com.yunbao.main.event;
|
package com.yunbao.common.event;
|
||||||
|
|
||||||
import com.yunbao.common.bean.BaseModel;
|
import com.yunbao.common.bean.BaseModel;
|
||||||
|
|
@ -0,0 +1,381 @@
|
|||||||
|
package com.yunbao.common.utils;
|
||||||
|
|
||||||
|
import static com.yunbao.common.CommonAppConfig.isGetNewWrap;
|
||||||
|
import static com.yunbao.common.utils.RouteUtil.PATH_COIN;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.webkit.JavascriptInterface;
|
||||||
|
import android.webkit.WebView;
|
||||||
|
|
||||||
|
import com.alibaba.android.arouter.launcher.ARouter;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.yunbao.common.CommonAppConfig;
|
||||||
|
import com.yunbao.common.Constants;
|
||||||
|
import com.yunbao.common.bean.IMLoginModel;
|
||||||
|
import com.yunbao.common.bean.JsWishBean;
|
||||||
|
import com.yunbao.common.bean.ReportCommunityBean;
|
||||||
|
import com.yunbao.common.bean.UserBean;
|
||||||
|
import com.yunbao.common.bean.VideoBean;
|
||||||
|
import com.yunbao.common.bean.VideoListBean;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
|
import com.yunbao.common.event.MainHomeCommunityToChatEvent;
|
||||||
|
import com.yunbao.common.manager.IMLoginManager;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.EventBus;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
//网页调用Android工具类
|
||||||
|
public class JavascriptInterfaceUtils {
|
||||||
|
private Activity mContext;
|
||||||
|
private WebView mWebView;
|
||||||
|
//判断是页面关闭还是网页回退
|
||||||
|
private boolean pageClose = false;
|
||||||
|
//同名activity跳转问题
|
||||||
|
private boolean LiveZhuangBana = true;
|
||||||
|
|
||||||
|
public JavascriptInterfaceUtils setPageClose(boolean pageClose) {
|
||||||
|
this.pageClose = pageClose;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceUtils setLiveZhuangBana(boolean liveZhuangBana) {
|
||||||
|
LiveZhuangBana = liveZhuangBana;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JavascriptInterfaceUtils(Activity mContext, WebView mWebView) {
|
||||||
|
this.mContext = mContext;
|
||||||
|
this.mWebView = mWebView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidOpeningNoble(String svg) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidOpeningNoble")
|
||||||
|
.setSvg(svg));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidGoBack() {
|
||||||
|
if (pageClose) {
|
||||||
|
mContext.finish();
|
||||||
|
} else {
|
||||||
|
mContext.runOnUiThread(() -> mWebView.goBack());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void AndroidAdjustConsume() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("AndroidAdjustConsume"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidGoToRe() {
|
||||||
|
ARouter.getInstance().build(PATH_COIN).withInt("p", 1).navigation();
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void onBack() {
|
||||||
|
mContext.finish();
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidClickToNewH5PageView(String url) {
|
||||||
|
url = CommonAppConfig.HOST + url;
|
||||||
|
url += "?uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
||||||
|
+ CommonAppConfig.getInstance().getToken();
|
||||||
|
if (LiveZhuangBana) {
|
||||||
|
RouteUtil.forwardLiveZhuangBanActivity(url, false);
|
||||||
|
} else {
|
||||||
|
RouteUtil.forwardZhuangBanActivity(url, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新跳转
|
||||||
|
*
|
||||||
|
* @param url 跳转的url
|
||||||
|
* @param title 有标题的展示标题
|
||||||
|
*/
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidClickToNewH5PageView(String url, String title) {
|
||||||
|
url = CommonAppConfig.HOST + url;
|
||||||
|
url += "?uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
||||||
|
+ CommonAppConfig.getInstance().getToken();
|
||||||
|
if (LiveZhuangBana) {
|
||||||
|
RouteUtil.forwardLiveZhuangBanActivity(url, title);
|
||||||
|
} else {
|
||||||
|
RouteUtil.forwardZhuangBanActivity(url, title);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置超皇字体颜色
|
||||||
|
*
|
||||||
|
* @param startColor 渐变色
|
||||||
|
* @param endColor 渐变色
|
||||||
|
* @param contentColor 内容颜色
|
||||||
|
*/
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidSetColor(String startColor, String endColor, String contentColor) {
|
||||||
|
IMLoginModel model = IMLoginManager.get(mContext).getUserInfo();
|
||||||
|
model.setStartColor("#" + startColor)
|
||||||
|
.setEndColor("#" + endColor)
|
||||||
|
.setContentColor("#" + contentColor);
|
||||||
|
IMLoginManager.get(mContext).upDataUserInfo(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidCommunityGift(String postsId) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidCommunityGift")
|
||||||
|
.setPostsId(postsId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void reportCommunity(String info) {
|
||||||
|
ReportCommunityBean reportCommunityBean = JSON.parseObject(info, ReportCommunityBean.class);
|
||||||
|
RouteUtil.forwardLiveReportActivity(reportCommunityBean.getDynamic_id(), 1, reportCommunityBean.getCommunity_type(), reportCommunityBean.getComment_id());
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void reportUser(String touid) {
|
||||||
|
RouteUtil.forwardLiveReportActivity(touid);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void isCloseNavigation(String isClose) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("isCloseNavigation")
|
||||||
|
.setIsClose(isClose));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidPlayVideo(String list) {
|
||||||
|
list.toString();
|
||||||
|
if (!"undefined".equals(list)) {
|
||||||
|
JSONObject obj = JSON.parseObject(list);
|
||||||
|
int position = obj.getIntValue("video_index");
|
||||||
|
String videoListString = obj.getString("video_list");
|
||||||
|
List<VideoListBean> videoList = JSON.parseArray(videoListString, VideoListBean.class);
|
||||||
|
List<VideoBean> videoBeanList = new ArrayList<>();
|
||||||
|
for (VideoListBean videoListBean : videoList) {
|
||||||
|
JSONObject obj2 = JSON.parseObject(videoListBean.getContent());
|
||||||
|
String msg = obj2.getString("msg");
|
||||||
|
VideoBean videoBean = new VideoBean();
|
||||||
|
videoBean.setHref(videoListBean.getVideo());
|
||||||
|
videoBean.setCity("");
|
||||||
|
videoBean.setCommentNum(videoListBean.getComment_num());
|
||||||
|
videoBean.setAddtime(videoListBean.getCreate_time());
|
||||||
|
videoBean.setDatetime("");
|
||||||
|
videoBean.setDistance("");
|
||||||
|
videoBean.setId(videoListBean.getId());
|
||||||
|
videoBean.setLat("");
|
||||||
|
videoBean.setLike(0);
|
||||||
|
videoBean.setTitle(msg);
|
||||||
|
if ("2".endsWith(videoListBean.getIs_attention()) || "0".endsWith(videoListBean.getIs_attention())) {
|
||||||
|
videoBean.setAttent(2);
|
||||||
|
} else if ("1".endsWith(videoListBean.getIs_attention())) {
|
||||||
|
videoBean.setAttent(1);
|
||||||
|
} else {
|
||||||
|
videoBean.setAttent(-1);
|
||||||
|
}
|
||||||
|
UserBean userBean = new UserBean();
|
||||||
|
userBean.setAvatar(videoListBean.getUser_avatar());
|
||||||
|
userBean.setUserNiceName(videoListBean.getUser_name());
|
||||||
|
userBean.setId(videoListBean.getUser_id());
|
||||||
|
videoBean.setUserBean(userBean);
|
||||||
|
|
||||||
|
videoBean.setUid(videoListBean.getUser_id());
|
||||||
|
videoBeanList.add(videoBean);
|
||||||
|
}
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidPlayVideo")
|
||||||
|
.setVideoBeanList(videoBeanList)
|
||||||
|
.setPosition(position));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidClickSayHiBack(String uid, String name, String img) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidClickSayHiBack"));
|
||||||
|
EventBus.getDefault().post(new MainHomeCommunityToChatEvent().setTargetId(uid));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidMethodLookToLive(String liveId) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidMethodLookToLive")
|
||||||
|
.setLiveId(liveId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidClickFansList(String uid) {
|
||||||
|
RouteUtil.forwardFansActivity(uid);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public String androidMethod(String data) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent().setMethod("androidMethod").setData(data));
|
||||||
|
|
||||||
|
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public String androidGetNewWrap(String data) {
|
||||||
|
if (data != null && !data.isEmpty()) {
|
||||||
|
isGetNewWrap = true;
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidMethodBack() {
|
||||||
|
mContext.finish();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void modifyMydata() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent().setMethod("modifyMydata").setIndexInto(1));
|
||||||
|
RouteUtil.forwardEditProfileActivity();
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void gotoHomePage(String indexStr) {
|
||||||
|
if (!"".equals(indexStr) && indexStr != null) {
|
||||||
|
int index = -1;
|
||||||
|
if ("0".equals(indexStr)) {
|
||||||
|
index = 0;
|
||||||
|
} else if ("1".equals(indexStr)) {
|
||||||
|
index = 1;
|
||||||
|
} else if ("2".equals(indexStr)) {
|
||||||
|
index = 2;
|
||||||
|
} else if ("3".equals(indexStr)) {
|
||||||
|
index = 3;
|
||||||
|
}
|
||||||
|
if (index != -1) {
|
||||||
|
mContext.finish();
|
||||||
|
Constants.isShowPage = index;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void openWebView(String url) {
|
||||||
|
Constants.isTitle = false;
|
||||||
|
RouteUtil.forwardZhuangBanActivity(url);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void openWebViewTitle(String url) {
|
||||||
|
Constants.isTitle = true;
|
||||||
|
RouteUtil.forwardZhuangBanActivity(url);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidNewGoToGooglePay(String ProductId, String OrderNumber, String MoneyUsd) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidNewGoToGooglePay")
|
||||||
|
.setProductId(ProductId)
|
||||||
|
.setMoneyUsd(MoneyUsd)
|
||||||
|
.setOrderNumber(OrderNumber));
|
||||||
|
}
|
||||||
|
|
||||||
|
//拉黑不感兴趣
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidLoseInterest() {
|
||||||
|
EventBus.getDefault().post("blacklist");
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void AndroidFellow() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("AndroidFellow"));
|
||||||
|
}
|
||||||
|
|
||||||
|
//跳转修改昵称
|
||||||
|
@JavascriptInterface
|
||||||
|
public void openUpdataName() {
|
||||||
|
Constants.myIntoIndex = 2;
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("openUpdataName")
|
||||||
|
.setUpdataUser(true));
|
||||||
|
RouteUtil.forwardMyWebViewActivity2(CommonAppConfig.HOST + "/h5/table/Modify-information.html" + "?token=" + CommonAppConfig.getInstance().getToken() + "&uid=" + CommonAppConfig.getInstance().getUid());
|
||||||
|
}
|
||||||
|
|
||||||
|
//跳转修改头像
|
||||||
|
@JavascriptInterface
|
||||||
|
public void openUpdataAvater() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("openUpdataAvater"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//跳转修改签名
|
||||||
|
@JavascriptInterface
|
||||||
|
public void openUpdataAutograph() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("openUpdataAutograph"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void androidGoTopUp() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidGoTopUp"));
|
||||||
|
//我们的
|
||||||
|
ARouter.getInstance().build(PATH_COIN).withInt("p", 0).withString("tag", "&first_page=1").navigation();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public String androidMethodLookLive(String uId, String liveId, String isLiving) {
|
||||||
|
//跳转个人主页
|
||||||
|
RouteUtil.forwardUserHome(mContext, liveId, 0);
|
||||||
|
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void AndroidClose() {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("AndroidClose"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void sendFansCard(String id) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("sendFansCard")
|
||||||
|
.setLiveId(id));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public String androidMethodClickUser(String userId, String liveId) {
|
||||||
|
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("androidMethodClickUser")
|
||||||
|
.setLiveId(liveId)
|
||||||
|
.setUserId(userId));
|
||||||
|
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public void onTrickerySendGift(String id) {
|
||||||
|
Bus.get().post(new JavascriptInterfaceEvent()
|
||||||
|
.setMethod("onTrickerySendGift")
|
||||||
|
.setUserId(id));
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -24,11 +24,26 @@ public class RouteUtil {
|
|||||||
public static final String PATH_LIVEREPORT = "/live/LiveReportActivity";
|
public static final String PATH_LIVEREPORT = "/live/LiveReportActivity";
|
||||||
public static final String PATH_MYWEBVIEWACTIVTITY = "/main/MyWebViewActivity";
|
public static final String PATH_MYWEBVIEWACTIVTITY = "/main/MyWebViewActivity";
|
||||||
public static final String PATH_ZHUANGBANACTIVITY = "/main/ZhuangBanActivity";
|
public static final String PATH_ZHUANGBANACTIVITY = "/main/ZhuangBanActivity";
|
||||||
|
public static final String PATH_LiveZHUANGBANACTIVITY = "/live/ZhuangBanActivity";
|
||||||
public static final String PATH_FACEBOOKACTIVITY = "/baidu/FacebookLoginActivity";
|
public static final String PATH_FACEBOOKACTIVITY = "/baidu/FacebookLoginActivity";
|
||||||
public static final String PATH_MAIN = "/main/MainActivity";
|
public static final String PATH_MAIN = "/main/MainActivity";
|
||||||
public static final String PATH_ENTRY = "/main/EntryActivity";
|
public static final String PATH_ENTRY = "/main/EntryActivity";
|
||||||
public static final String PATH_LIVE_AUDIENCE = "/live/LiveAudienceActivity";
|
public static final String PATH_LIVE_AUDIENCE = "/live/LiveAudienceActivity";
|
||||||
public static final String PATH_SETTING = "/main/SettingActivity";
|
public static final String PATH_SETTING = "/main/SettingActivity";
|
||||||
|
public static final String PATH_FANSACTIVITY = "/main/FansActivity";
|
||||||
|
public static final String PATH_MYWEBVIEWACTIVTITY2 = "/main/MyWebViewActivity2";
|
||||||
|
|
||||||
|
public static void forwardFansActivity(String uid) {
|
||||||
|
ARouter.getInstance().build(PATH_FANSACTIVITY)
|
||||||
|
.withString(Constants.TO_UID, uid)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void forwardMyWebViewActivity2(String url) {
|
||||||
|
ARouter.getInstance().build(PATH_MYWEBVIEWACTIVTITY2)
|
||||||
|
.withString(Constants.URL, url)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 启动页
|
* 启动页
|
||||||
@ -98,6 +113,47 @@ public class RouteUtil {
|
|||||||
.navigation();
|
.navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 跳转到装扮
|
||||||
|
*/
|
||||||
|
public static void forwardZhuangBanActivity(String url, boolean isFull) {
|
||||||
|
ARouter.getInstance().build(PATH_ZHUANGBANACTIVITY)
|
||||||
|
.withString("title", "")
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 跳转到装扮
|
||||||
|
*/
|
||||||
|
public static void forwardLiveZhuangBanActivity(String url, boolean isFull) {
|
||||||
|
ARouter.getInstance().build(PATH_LiveZHUANGBANACTIVITY)
|
||||||
|
.withString("url", url)
|
||||||
|
.withBoolean("isFull", isFull)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 跳转到装扮
|
||||||
|
*/
|
||||||
|
public static void forwardLiveZhuangBanActivity(String url, String title) {
|
||||||
|
ARouter.getInstance().build(PATH_LiveZHUANGBANACTIVITY)
|
||||||
|
.withString("url", url)
|
||||||
|
.withString("title", title)
|
||||||
|
.withBoolean("isFull", false)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 跳转到装扮
|
||||||
|
*/
|
||||||
|
public static void forwardZhuangBanActivity(String url, String title) {
|
||||||
|
ARouter.getInstance().build(PATH_ZHUANGBANACTIVITY)
|
||||||
|
.withString("url", url)
|
||||||
|
.withString("title", title)
|
||||||
|
.withBoolean("isFull", false)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 跳转到充值页面
|
* 跳转到充值页面
|
||||||
*/
|
*/
|
||||||
@ -114,6 +170,7 @@ public class RouteUtil {
|
|||||||
ARouter.getInstance().build(PATH_EDITPROFILE)
|
ARouter.getInstance().build(PATH_EDITPROFILE)
|
||||||
.navigation();
|
.navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改个人资料
|
* 修改个人资料
|
||||||
*/
|
*/
|
||||||
@ -121,6 +178,7 @@ public class RouteUtil {
|
|||||||
ARouter.getInstance().build(PATH_SETTING)
|
ARouter.getInstance().build(PATH_SETTING)
|
||||||
.navigation();
|
.navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 打开直播页面
|
* 打开直播页面
|
||||||
*/
|
*/
|
||||||
@ -142,6 +200,15 @@ public class RouteUtil {
|
|||||||
.navigation();
|
.navigation();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void forwardLiveReportActivity(String dynamicId, int intoIndex, String communityType, String commentId) {
|
||||||
|
ARouter.getInstance().build(PATH_LIVEREPORT)
|
||||||
|
.withString(Constants.TO_UID, dynamicId)
|
||||||
|
.withInt(Constants.INTOINDEX, intoIndex)
|
||||||
|
.withString("community_type", communityType)
|
||||||
|
.withString("comment_id", commentId)
|
||||||
|
.navigation();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 进入facebook登录
|
* 进入facebook登录
|
||||||
*/
|
*/
|
||||||
|
@ -1228,7 +1228,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
|||||||
*/
|
*/
|
||||||
public void openFansWindow() {
|
public void openFansWindow() {
|
||||||
|
|
||||||
LiveFansFragment fragment = new LiveFansFragment();
|
LiveFansFragment fragment = new LiveFansFragment(mContext);
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
|
|
||||||
//粉絲團粉絲團
|
//粉絲團粉絲團
|
||||||
|
@ -751,6 +751,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
.setType(LiveAudienceEvent.LiveAudienceType.FAN_CLUB));
|
.setType(LiveAudienceEvent.LiveAudienceType.FAN_CLUB));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showerHtml(String htmlUrl, boolean screen) {
|
public void showerHtml(String htmlUrl, boolean screen) {
|
||||||
if (!screen) {
|
if (!screen) {
|
||||||
@ -895,7 +896,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
|||||||
break;
|
break;
|
||||||
case FAN_CLUB:
|
case FAN_CLUB:
|
||||||
|
|
||||||
LiveFansFragment liveFansFragment = new LiveFansFragment();
|
LiveFansFragment liveFansFragment = new LiveFansFragment(mContext);
|
||||||
//粉絲團粉絲團
|
//粉絲團粉絲團
|
||||||
//不是粉絲
|
//不是粉絲
|
||||||
if (LiveAudienceActivity.is_fans != null && LiveAudienceActivity.is_fans.equals("2")) {
|
if (LiveAudienceActivity.is_fans != null && LiveAudienceActivity.is_fans.equals("2")) {
|
||||||
|
@ -8,11 +8,9 @@ import android.net.Uri;
|
|||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
import androidx.annotation.RequiresApi;
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -22,23 +20,30 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.HtmlConfig;
|
import com.yunbao.common.HtmlConfig;
|
||||||
import com.yunbao.common.R;
|
import com.yunbao.common.R;
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
|
import com.yunbao.common.bean.LiveBean;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.common.bean.LiveBean;
|
|
||||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/9/25.
|
* Created by cxf on 2018/9/25.
|
||||||
* 我的徽章 h5页面
|
* 我的徽章 h5页面
|
||||||
@ -133,7 +138,7 @@ public class WebViewActivityMedal extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
mWebView.addJavascriptInterface(new JsInteration(), "androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||||
@ -150,23 +155,6 @@ public class WebViewActivityMedal extends AbsActivity {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidMethodLookLive(String uId, String liveId, String isLiving) {
|
|
||||||
//跳转个人主页
|
|
||||||
RouteUtil.forwardUserHome(mContext, liveId, 0);
|
|
||||||
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodLookToLive(String liveId) {
|
|
||||||
//看直播
|
|
||||||
gotoLive(liveId);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
||||||
|
|
||||||
@ -192,7 +180,7 @@ public class WebViewActivityMedal extends AbsActivity {
|
|||||||
}
|
}
|
||||||
mCheckLivePresenter.checkLive(liveBean);
|
mCheckLivePresenter.checkLive(liveBean);
|
||||||
} else {
|
} else {
|
||||||
RouteUtil.forwardUserHome(mContext, live_id,0);
|
RouteUtil.forwardUserHome(mContext, live_id, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -332,4 +320,13 @@ public class WebViewActivityMedal extends AbsActivity {
|
|||||||
ToastUtil.show(getString(R.string.copy_success));
|
ToastUtil.show(getString(R.string.copy_success));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||||
|
//看直播
|
||||||
|
gotoLive(event.getLiveId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -2,7 +2,6 @@ package com.yunbao.live.activity;
|
|||||||
|
|
||||||
import static com.yunbao.common.CommonAppContext.logger;
|
import static com.yunbao.common.CommonAppContext.logger;
|
||||||
import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
|
import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
|
||||||
import static com.yunbao.common.utils.RouteUtil.PATH_COIN;
|
|
||||||
|
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
import android.content.ClipboardManager;
|
import android.content.ClipboardManager;
|
||||||
@ -15,7 +14,6 @@ import android.text.TextUtils;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -31,7 +29,7 @@ import androidx.annotation.RequiresApi;
|
|||||||
|
|
||||||
import com.adjust.sdk.Adjust;
|
import com.adjust.sdk.Adjust;
|
||||||
import com.adjust.sdk.AdjustEvent;
|
import com.adjust.sdk.AdjustEvent;
|
||||||
import com.alibaba.android.arouter.launcher.ARouter;
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||||
import com.opensource.svgaplayer.SVGACallback;
|
import com.opensource.svgaplayer.SVGACallback;
|
||||||
import com.opensource.svgaplayer.SVGADrawable;
|
import com.opensource.svgaplayer.SVGADrawable;
|
||||||
import com.opensource.svgaplayer.SVGAImageView;
|
import com.opensource.svgaplayer.SVGAImageView;
|
||||||
@ -40,18 +38,24 @@ import com.opensource.svgaplayer.SVGAVideoEntity;
|
|||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
import com.yunbao.common.bean.IMLoginModel;
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.manager.IMLoginManager;
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
import com.yunbao.common.utils.SVGAViewUtils;
|
import com.yunbao.common.utils.SVGAViewUtils;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
import java.net.MalformedURLException;
|
import java.net.MalformedURLException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
|
||||||
|
@Route(path = RouteUtil.PATH_LiveZHUANGBANACTIVITY)
|
||||||
public class ZhuangBanActivity extends AbsActivity {
|
public class ZhuangBanActivity extends AbsActivity {
|
||||||
|
|
||||||
private ProgressBar mProgressBar;
|
private ProgressBar mProgressBar;
|
||||||
@ -72,6 +76,7 @@ public class ZhuangBanActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void main() {
|
protected void main() {
|
||||||
|
Bus.getOn(this);
|
||||||
String url = getIntent().getStringExtra(Constants.URL);
|
String url = getIntent().getStringExtra(Constants.URL);
|
||||||
String titleString = getIntent().getStringExtra("title");
|
String titleString = getIntent().getStringExtra("title");
|
||||||
L.e("H5---2s>" + url);
|
L.e("H5---2s>" + url);
|
||||||
@ -172,7 +177,9 @@ public class ZhuangBanActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
mWebView.addJavascriptInterface(new JsInteration(), "androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView)
|
||||||
|
.setPageClose(true)
|
||||||
|
.setLiveZhuangBana(true), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||||
@ -180,141 +187,6 @@ public class ZhuangBanActivity extends AbsActivity {
|
|||||||
mWebView.loadUrl(url);
|
mWebView.loadUrl(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidOpeningNoble(String svg) {
|
|
||||||
Log.e("Zhu", "svg" + svg);
|
|
||||||
try {
|
|
||||||
new SVGAParser(mContext).parse(new URL(svg), new SVGAParser.ParseCompletion() {
|
|
||||||
@Override
|
|
||||||
public void onComplete(SVGAVideoEntity videoItem) {
|
|
||||||
svga.setVisibility(View.VISIBLE);
|
|
||||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
|
||||||
svga.setImageDrawable(drawable);
|
|
||||||
svga.setLoops(1);
|
|
||||||
SVGAViewUtils.playEndClear(svga);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onError() {
|
|
||||||
}
|
|
||||||
});
|
|
||||||
svga.setCallback(new SVGACallback() {
|
|
||||||
@Override
|
|
||||||
public void onPause() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onFinished() {
|
|
||||||
svga.clear();
|
|
||||||
svga.setVisibility(View.GONE);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onRepeat() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onStep(int i, double v) {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (MalformedURLException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoBack() {
|
|
||||||
ZhuangBanActivity.this.finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void AndroidAdjustConsume() {
|
|
||||||
mFirebaseAnalytics.logEvent("FS_event_interaction", null);
|
|
||||||
logger.logEvent("FB_event_interaction", null);
|
|
||||||
AdjustEvent adjustEvent1 = new AdjustEvent("rq2c5n");
|
|
||||||
Adjust.trackEvent(adjustEvent1);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoToRe() {
|
|
||||||
ARouter.getInstance().build(PATH_COIN).withInt("p", 1).navigation();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void onBack() {
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickToNewH5PageView(String url) {
|
|
||||||
url = CommonAppConfig.HOST + url;
|
|
||||||
url += "?uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
|
||||||
+ CommonAppConfig.getInstance().getToken();
|
|
||||||
Log.i("tag", url);
|
|
||||||
Intent intent = new Intent(mContext, ZhuangBanActivity.class);
|
|
||||||
intent.putExtra("url", url);
|
|
||||||
intent.putExtra("isFull", false);
|
|
||||||
mContext.startActivity(intent);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新跳转
|
|
||||||
*
|
|
||||||
* @param url 跳转的url
|
|
||||||
* @param title 有标题的展示标题
|
|
||||||
*/
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickToNewH5PageView(String url, String title) {
|
|
||||||
url = CommonAppConfig.HOST + url;
|
|
||||||
url += "?uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
|
||||||
+ CommonAppConfig.getInstance().getToken();
|
|
||||||
Log.i("tag", url);
|
|
||||||
Intent intent = new Intent(mContext, ZhuangBanActivity.class);
|
|
||||||
intent.putExtra("url", url);
|
|
||||||
intent.putExtra("title", title);
|
|
||||||
mContext.startActivity(intent);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 设置超皇字体颜色
|
|
||||||
*
|
|
||||||
* @param startColor 渐变色
|
|
||||||
* @param endColor 渐变色
|
|
||||||
* @param contentColor 内容颜色
|
|
||||||
*/
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidSetColor(String startColor, String endColor, String contentColor) {
|
|
||||||
IMLoginModel model = IMLoginManager.get(mContext).getUserInfo();
|
|
||||||
model.setStartColor("#"+startColor)
|
|
||||||
.setEndColor("#"+endColor)
|
|
||||||
.setContentColor("#"+contentColor);
|
|
||||||
IMLoginManager.get(mContext).upDataUserInfo(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// //js调用原生
|
|
||||||
// public class JsInteration {
|
|
||||||
// @JavascriptInterface
|
|
||||||
// public String androidMethodLookLive(String liveId,String isLiving) {
|
|
||||||
// //进入直播间
|
|
||||||
// if (!TextUtils.isEmpty(isLiving) ) {
|
|
||||||
// if (isLiving.equals("1")){
|
|
||||||
// //跳转直播间
|
|
||||||
// }else {
|
|
||||||
// //打开主播个人主页
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// return "";
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
private void openImageChooserActivity(ValueCallback<Uri> valueCallback) {
|
private void openImageChooserActivity(ValueCallback<Uri> valueCallback) {
|
||||||
mValueCallback = valueCallback;
|
mValueCallback = valueCallback;
|
||||||
@ -418,6 +290,7 @@ public class ZhuangBanActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onDestroy() {
|
protected void onDestroy() {
|
||||||
|
Bus.getOff(this);
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
if (parent != null) {
|
if (parent != null) {
|
||||||
@ -438,4 +311,54 @@ public class ZhuangBanActivity extends AbsActivity {
|
|||||||
ToastUtil.show(getString(R.string.copy_success));
|
ToastUtil.show(getString(R.string.copy_success));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidOpeningNoble")) {
|
||||||
|
try {
|
||||||
|
new SVGAParser(mContext).parse(new URL(event.getSvg()), new SVGAParser.ParseCompletion() {
|
||||||
|
@Override
|
||||||
|
public void onComplete(SVGAVideoEntity videoItem) {
|
||||||
|
svga.setVisibility(View.VISIBLE);
|
||||||
|
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||||
|
svga.setImageDrawable(drawable);
|
||||||
|
svga.setLoops(1);
|
||||||
|
SVGAViewUtils.playEndClear(svga);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError() {
|
||||||
|
}
|
||||||
|
});
|
||||||
|
svga.setCallback(new SVGACallback() {
|
||||||
|
@Override
|
||||||
|
public void onPause() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFinished() {
|
||||||
|
svga.clear();
|
||||||
|
svga.setVisibility(View.GONE);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onRepeat() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onStep(int i, double v) {
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (MalformedURLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "AndroidAdjustConsume")) {
|
||||||
|
mFirebaseAnalytics.logEvent("FS_event_interaction", null);
|
||||||
|
logger.logEvent("FB_event_interaction", null);
|
||||||
|
AdjustEvent adjustEvent1 = new AdjustEvent("rq2c5n");
|
||||||
|
Adjust.trackEvent(adjustEvent1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,30 +1,43 @@
|
|||||||
package com.yunbao.live.dialog;
|
package com.yunbao.live.dialog;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.Window;
|
import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
import android.webkit.WebViewClient;
|
import android.webkit.WebViewClient;
|
||||||
|
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
import com.yunbao.live.activity.LiveActivity;
|
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||||
import com.yunbao.live.views.LiveRoomViewHolder;
|
import com.yunbao.live.views.LiveRoomViewHolder;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
public class LiveFansFragment extends AbsDialogFragment {
|
public class LiveFansFragment extends AbsDialogFragment {
|
||||||
|
|
||||||
private WebView mWebView;
|
private WebView mWebView;
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
|
public LiveFansFragment(Activity mContext) {
|
||||||
|
this.mContext = mContext;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
@ -51,6 +64,18 @@ public class LiveFansFragment extends AbsDialogFragment {
|
|||||||
window.setAttributes(params);
|
window.setAttributes(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
Bus.getOn(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDetach() {
|
||||||
|
super.onDetach();
|
||||||
|
Bus.getOff(this);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(Bundle savedInstanceState) {
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
@ -59,7 +84,7 @@ public class LiveFansFragment extends AbsDialogFragment {
|
|||||||
@Override
|
@Override
|
||||||
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
||||||
L.e("H5-------->" + url);
|
L.e("H5-------->" + url);
|
||||||
view.loadUrl(url);
|
view.loadUrl(url);
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -70,8 +95,7 @@ public class LiveFansFragment extends AbsDialogFragment {
|
|||||||
});
|
});
|
||||||
|
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true); // 是否开启JS支持
|
mWebView.getSettings().setJavaScriptEnabled(true); // 是否开启JS支持
|
||||||
// mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView).setPageClose(false), "androidObject");
|
||||||
mWebView.addJavascriptInterface(new JsInteration(),"androidObject");
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||||
}
|
}
|
||||||
@ -79,56 +103,35 @@ public class LiveFansFragment extends AbsDialogFragment {
|
|||||||
if (bundle == null) {
|
if (bundle == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Log.e("tag",bundle.getString(Constants.URL));
|
Log.e("tag", bundle.getString(Constants.URL));
|
||||||
mWebView.loadUrl(bundle.getString(Constants.URL));
|
mWebView.loadUrl(bundle.getString(Constants.URL));
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoBack() {
|
|
||||||
((LiveActivity) mContext).runOnUiThread(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
mWebView.goBack();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
mWebView.goBack();
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void AndroidClose() {
|
|
||||||
((LiveActivity) mContext).runOnUiThread(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
LiveAudienceActivity.is_fans = "2";
|
|
||||||
int num = LiveAudienceActivity.fansNum-1;
|
|
||||||
LiveRoomViewHolder.setFansNum(num);
|
|
||||||
ToastUtil.show("退出成功");
|
|
||||||
dismiss();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void sendFansCard(String id) {
|
|
||||||
((LiveActivity) mContext).runOnUiThread(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
if(LiveRoomViewHolder.mBtnFollow.getVisibility() == View.VISIBLE) {
|
|
||||||
LiveRoomViewHolder.follow();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//点击 开通粉丝勋章,打开礼物列表送礼物
|
|
||||||
((LiveAudienceActivity) mContext).openGiftWindow(id,"0");
|
|
||||||
dismiss();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
super.onDestroy();
|
super.onDestroy();
|
||||||
mContext = null;
|
mContext = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "AndroidClose")) {
|
||||||
|
LiveAudienceActivity.is_fans = "2";
|
||||||
|
int num = LiveAudienceActivity.fansNum - 1;
|
||||||
|
LiveRoomViewHolder.setFansNum(num);
|
||||||
|
ToastUtil.show("退出成功");
|
||||||
|
dismiss();
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "sendFansCard")) {
|
||||||
|
if (LiveRoomViewHolder.mBtnFollow.getVisibility() == View.VISIBLE) {
|
||||||
|
LiveRoomViewHolder.follow();
|
||||||
|
}
|
||||||
|
//点击 开通粉丝勋章,打开礼物列表送礼物
|
||||||
|
((LiveAudienceActivity) mContext).openGiftWindow(event.getLiveId(), "0");
|
||||||
|
dismiss();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,26 +1,37 @@
|
|||||||
package com.yunbao.live.dialog;
|
package com.yunbao.live.dialog;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import android.view.Window;
|
import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
import android.webkit.WebViewClient;
|
import android.webkit.WebViewClient;
|
||||||
|
|
||||||
import com.alibaba.android.arouter.launcher.ARouter;
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
|
|
||||||
import static com.yunbao.common.utils.RouteUtil.PATH_COIN;
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
public class LiveOneDialogFragment extends AbsDialogFragment {
|
public class LiveOneDialogFragment extends AbsDialogFragment {
|
||||||
|
|
||||||
private WebView mWebView;
|
private WebView mWebView;
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
|
public LiveOneDialogFragment(Activity mContext) {
|
||||||
|
this.mContext = mContext;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
@ -48,12 +59,24 @@ public class LiveOneDialogFragment extends AbsDialogFragment {
|
|||||||
window.setAttributes(params);
|
window.setAttributes(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
Bus.getOn(this);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDetach() {
|
||||||
|
super.onDetach();
|
||||||
|
Bus.getOff(this);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(Bundle savedInstanceState) {
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
mWebView = (WebView)findViewById(R.id.rlWebview);
|
mWebView = (WebView) findViewById(R.id.rlWebview);
|
||||||
mWebView.addJavascriptInterface(new JsInteration(),"androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||||
@ -71,7 +94,7 @@ public class LiveOneDialogFragment extends AbsDialogFragment {
|
|||||||
@Override
|
@Override
|
||||||
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
||||||
L.e("H5-------->" + url);
|
L.e("H5-------->" + url);
|
||||||
view.loadUrl(url);
|
view.loadUrl(url);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -83,19 +106,13 @@ public class LiveOneDialogFragment extends AbsDialogFragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
//js调用原生
|
if (TextUtils.equals(event.getMethod(), "androidCommunityGift")) {
|
||||||
public class JsInteration {
|
dismiss();
|
||||||
@JavascriptInterface
|
}
|
||||||
public void androidGoTopUp() {
|
|
||||||
|
|
||||||
//我们的
|
|
||||||
ARouter.getInstance().build(PATH_COIN).withInt("p",0).withString("tag","&first_page=1").navigation();
|
|
||||||
|
|
||||||
dismiss();
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,8 +11,6 @@ import com.yunbao.common.CommonAppContext;
|
|||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.HtmlConfig;
|
import com.yunbao.common.HtmlConfig;
|
||||||
import com.yunbao.common.bean.JsTurnTableBean;
|
import com.yunbao.common.bean.JsTurnTableBean;
|
||||||
import com.yunbao.common.bean.JsTurnTableBean2;
|
|
||||||
import com.yunbao.common.bean.JsWishBean;
|
|
||||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
import com.yunbao.live.views.TurnTableWebViewHolder;
|
import com.yunbao.live.views.TurnTableWebViewHolder;
|
||||||
@ -29,10 +27,10 @@ import cn.qqtheme.framework.util.ScreenUtils;
|
|||||||
* 观众查看 转盘弹窗
|
* 观众查看 转盘弹窗
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class LiveTurnTableDialogFragment4Audience extends AbsDialogFragment {
|
public class LiveTurnTableDialogFragment4Audience extends AbsDialogFragment {
|
||||||
|
|
||||||
protected TurnTableWebViewHolder mTurnTableViewHolder;
|
protected TurnTableWebViewHolder mTurnTableViewHolder;
|
||||||
private String mLiveUid="";
|
private String mLiveUid = "";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
@ -56,14 +54,13 @@ public class LiveTurnTableDialogFragment4Audience extends AbsDialogFragment {
|
|||||||
WindowManager.LayoutParams params = window.getAttributes();
|
WindowManager.LayoutParams params = window.getAttributes();
|
||||||
params.width = WindowManager.LayoutParams.MATCH_PARENT;
|
params.width = WindowManager.LayoutParams.MATCH_PARENT;
|
||||||
// params.height = DpUtil.dp2px(400);
|
// params.height = DpUtil.dp2px(400);
|
||||||
params.height =(int)(ScreenUtils.heightPixels(CommonAppContext.sInstance)*0.8);
|
params.height = (int) (ScreenUtils.heightPixels(CommonAppContext.sInstance) * 0.8);
|
||||||
|
|
||||||
params.gravity = Gravity.BOTTOM;
|
params.gravity = Gravity.BOTTOM;
|
||||||
window.setAttributes(params);
|
window.setAttributes(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(Bundle savedInstanceState) {
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
@ -72,12 +69,12 @@ public class LiveTurnTableDialogFragment4Audience extends AbsDialogFragment {
|
|||||||
mLiveUid = bundle.getString(Constants.LIVE_UID);
|
mLiveUid = bundle.getString(Constants.LIVE_UID);
|
||||||
}
|
}
|
||||||
EventBus.getDefault().register(this);
|
EventBus.getDefault().register(this);
|
||||||
RelativeLayout rlWebview= (RelativeLayout) findViewById(R.id.rlWebview);
|
RelativeLayout rlWebview = (RelativeLayout) findViewById(R.id.rlWebview);
|
||||||
if (mTurnTableViewHolder == null) {
|
if (mTurnTableViewHolder == null) {
|
||||||
String url=HtmlConfig.TURNTABLE_URL;
|
String url = HtmlConfig.TURNTABLE_URL;
|
||||||
url += "&uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
url += "&uid=" + CommonAppConfig.getInstance().getUid() + "&token="
|
||||||
+ CommonAppConfig.getInstance().getToken() + "&liveUid="+mLiveUid;
|
+ CommonAppConfig.getInstance().getToken() + "&liveUid=" + mLiveUid;
|
||||||
mTurnTableViewHolder = new TurnTableWebViewHolder(mContext, rlWebview, url);
|
mTurnTableViewHolder = new TurnTableWebViewHolder(getActivity(), rlWebview, url);
|
||||||
mTurnTableViewHolder.subscribeActivityLifeCycle();
|
mTurnTableViewHolder.subscribeActivityLifeCycle();
|
||||||
mTurnTableViewHolder.addToParent();
|
mTurnTableViewHolder.addToParent();
|
||||||
}
|
}
|
||||||
@ -88,14 +85,12 @@ public class LiveTurnTableDialogFragment4Audience extends AbsDialogFragment {
|
|||||||
|
|
||||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
public void onGotoOnlineShop(JsTurnTableBean bean) {
|
public void onGotoOnlineShop(JsTurnTableBean bean) {
|
||||||
if (bean!=null){
|
if (bean != null) {
|
||||||
dismiss();
|
dismiss();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
super.onDestroy();
|
super.onDestroy();
|
||||||
|
@ -2,6 +2,7 @@ package com.yunbao.live.presenter;
|
|||||||
|
|
||||||
import android.Manifest;
|
import android.Manifest;
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
|
import android.app.Activity;
|
||||||
import android.app.Dialog;
|
import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.drawable.ColorDrawable;
|
||||||
@ -252,7 +253,7 @@ public class LiveLinkMicPresenter implements View.OnClickListener {
|
|||||||
String url = CommonAppConfig.HOST + "/h5/activity/firstTopUp/index.html?&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
String url = CommonAppConfig.HOST + "/h5/activity/firstTopUp/index.html?&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
bundle.putString("url", url);
|
bundle.putString("url", url);
|
||||||
LiveOneDialogFragment fragment = new LiveOneDialogFragment();
|
LiveOneDialogFragment fragment = new LiveOneDialogFragment((Activity) mContext);
|
||||||
fragment.setArguments(bundle);
|
fragment.setArguments(bundle);
|
||||||
fragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveOneDialogFragment");
|
fragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveOneDialogFragment");
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,11 @@
|
|||||||
package com.yunbao.live.views;
|
package com.yunbao.live.views;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.app.Activity;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
@ -15,22 +13,18 @@ import android.webkit.WebViewClient;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
import com.yunbao.common.CommonAppConfig;
|
|
||||||
import com.yunbao.common.Constants;
|
|
||||||
import com.yunbao.common.HtmlConfig;
|
import com.yunbao.common.HtmlConfig;
|
||||||
import com.yunbao.common.activity.WebViewActivity;
|
import com.yunbao.common.activity.WebViewActivity;
|
||||||
import com.yunbao.common.bean.JsTurnTableBean;
|
import com.yunbao.common.bean.JsTurnTableBean;
|
||||||
import com.yunbao.common.bean.JsTurnTableBean2;
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.bean.JsWishBean;
|
import com.yunbao.common.utils.Bus;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
import com.yunbao.live.activity.LiveActivity;
|
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
|
||||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
import static com.yunbao.common.CommonAppConfig.isGetNewWrap;
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/10/15.
|
* Created by cxf on 2018/10/15.
|
||||||
@ -42,9 +36,11 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
private ProgressBar mProgressBar;
|
private ProgressBar mProgressBar;
|
||||||
private WebView mWebView;
|
private WebView mWebView;
|
||||||
private String mUrl;
|
private String mUrl;
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
public TurnTableWebViewHolder(Context context, ViewGroup parentView, String url) {
|
public TurnTableWebViewHolder(Activity context, ViewGroup parentView, String url) {
|
||||||
super(context, parentView, url);
|
super(context, parentView, url);
|
||||||
|
mContext = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -60,6 +56,7 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
@Override
|
@Override
|
||||||
public void init() {
|
public void init() {
|
||||||
super.init();
|
super.init();
|
||||||
|
Bus.getOn(this);
|
||||||
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
||||||
mWebView = new WebView(mContext);
|
mWebView = new WebView(mContext);
|
||||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
|
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
|
||||||
@ -78,7 +75,7 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
mWebView.addJavascriptInterface(new JsInteration(),"androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView), "androidObject");
|
||||||
mWebView.setWebChromeClient(new WebChromeClient() {
|
mWebView.setWebChromeClient(new WebChromeClient() {
|
||||||
@Override
|
@Override
|
||||||
public void onProgressChanged(WebView view, int newProgress) {
|
public void onProgressChanged(WebView view, int newProgress) {
|
||||||
@ -92,25 +89,6 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
((LinearLayout) mContentView).addView(mWebView);
|
((LinearLayout) mContentView).addView(mWebView);
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidMethod(String data) {
|
|
||||||
if (data != null && !data.isEmpty()) {
|
|
||||||
WebViewActivity.forward(mContext, HtmlConfig.SHOP);
|
|
||||||
EventBus.getDefault().post(new JsTurnTableBean(data));
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidGetNewWrap(String data) {
|
|
||||||
if (data != null && !data.isEmpty()) {
|
|
||||||
isGetNewWrap = true;
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void loadData() {
|
public void loadData() {
|
||||||
@ -124,6 +102,7 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void release() {
|
public void release() {
|
||||||
|
Bus.getOff(this);
|
||||||
super.release();
|
super.release();
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
@ -140,4 +119,16 @@ public class TurnTableWebViewHolder extends AbsLivePageViewHolder implements Vie
|
|||||||
public void onHide() {
|
public void onHide() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidMethod")) {
|
||||||
|
if (event.getData() != null && !event.getData().isEmpty()) {
|
||||||
|
WebViewActivity.forward(mContext, HtmlConfig.SHOP);
|
||||||
|
EventBus.getDefault().post(new JsTurnTableBean(event.getData()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,35 +1,33 @@
|
|||||||
package com.yunbao.live.views;
|
package com.yunbao.live.views;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
import android.webkit.WebViewClient;
|
import android.webkit.WebViewClient;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
import android.widget.TextView;
|
|
||||||
|
|
||||||
import com.yunbao.common.CommonAppConfig;
|
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.bean.JsWishBean;
|
import com.yunbao.common.bean.JsWishBean;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
|
||||||
import com.yunbao.live.R;
|
import com.yunbao.live.R;
|
||||||
import com.yunbao.live.activity.LiveActivity;
|
import com.yunbao.live.activity.LiveActivity;
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
|
||||||
import com.yunbao.live.dialog.LiveTrickeryDialogFragment4Audience;
|
|
||||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/10/15.
|
* Created by cxf on 2018/10/15.
|
||||||
@ -59,6 +57,7 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
@Override
|
@Override
|
||||||
public void init() {
|
public void init() {
|
||||||
super.init();
|
super.init();
|
||||||
|
Bus.getOn(this);
|
||||||
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
||||||
mWebView = new WebView(mContext);
|
mWebView = new WebView(mContext);
|
||||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
|
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
|
||||||
@ -98,7 +97,7 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
// 自适应 屏幕大小界面
|
// 自适应 屏幕大小界面
|
||||||
webSettings.setLoadWithOverviewMode(true);
|
webSettings.setLoadWithOverviewMode(true);
|
||||||
|
|
||||||
mWebView.addJavascriptInterface(new JsInteration(),"androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils((Activity) mContext, mWebView).setPageClose(false), "androidObject");
|
||||||
mWebView.setWebChromeClient(new WebChromeClient() {
|
mWebView.setWebChromeClient(new WebChromeClient() {
|
||||||
@Override
|
@Override
|
||||||
public void onProgressChanged(WebView view, int newProgress) {
|
public void onProgressChanged(WebView view, int newProgress) {
|
||||||
@ -112,35 +111,11 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
((LinearLayout) mContentView).addView(mWebView);
|
((LinearLayout) mContentView).addView(mWebView);
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidMethod(String data) {
|
|
||||||
if (data != null && !data.isEmpty()) {
|
|
||||||
EventBus.getDefault().post(new JsWishBean(data));
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidMethodClickUser(String userId,String liveId) {
|
|
||||||
//点击用户头像
|
|
||||||
if (!TextUtils.isEmpty(userId) && !TextUtils.isEmpty(liveId)) {
|
|
||||||
showUserDialog(userId, liveId);
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void onTrickerySendGift(String id) {
|
|
||||||
if (id != null) {
|
|
||||||
EventBus.getDefault().post(new JsWishBean(id));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 显示个人资料弹窗
|
* 显示个人资料弹窗
|
||||||
*/
|
*/
|
||||||
private void showUserDialog(String toUid,String liveId) {
|
private void showUserDialog(String toUid, String liveId) {
|
||||||
if (!TextUtils.isEmpty(liveId) && !TextUtils.isEmpty(toUid)) {
|
if (!TextUtils.isEmpty(liveId) && !TextUtils.isEmpty(toUid)) {
|
||||||
LiveUserDialogFragment fragment = new LiveUserDialogFragment();
|
LiveUserDialogFragment fragment = new LiveUserDialogFragment();
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
@ -151,6 +126,7 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
fragment.show(((LiveActivity) mContext).getSupportFragmentManager(), "LiveUserDialogFragment");
|
fragment.show(((LiveActivity) mContext).getSupportFragmentManager(), "LiveUserDialogFragment");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void loadData() {
|
public void loadData() {
|
||||||
if (!mLoad) {
|
if (!mLoad) {
|
||||||
@ -163,6 +139,7 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void release() {
|
public void release() {
|
||||||
|
Bus.getOff(this);
|
||||||
super.release();
|
super.release();
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
@ -179,4 +156,24 @@ public class WishlistWebViewHolder extends AbsLivePageViewHolder implements View
|
|||||||
public void onHide() {
|
public void onHide() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidMethod")) {
|
||||||
|
if (event.getData() != null && !event.getData().isEmpty()) {
|
||||||
|
EventBus.getDefault().post(new JsWishBean(event.getData()));
|
||||||
|
}
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidMethodClickUser")) {
|
||||||
|
//点击用户头像
|
||||||
|
if (!TextUtils.isEmpty(event.getUserId()) && !TextUtils.isEmpty(event.getLiveId())) {
|
||||||
|
showUserDialog(event.getUserId(), event.getLiveId());
|
||||||
|
}
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "onTrickerySendGift")) {
|
||||||
|
if (event.getUserId() != null) {
|
||||||
|
EventBus.getDefault().post(new JsWishBean(event.getUserId()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import android.content.Intent;
|
|||||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
|
||||||
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
@ -33,7 +34,7 @@ import java.util.List;
|
|||||||
* Created by cxf on 2018/9/29.
|
* Created by cxf on 2018/9/29.
|
||||||
* 我的粉丝 TA的粉丝
|
* 我的粉丝 TA的粉丝
|
||||||
*/
|
*/
|
||||||
|
@Route(path = RouteUtil.PATH_FANSACTIVITY)
|
||||||
public class FansActivity extends AbsActivity implements OnItemClickListener<SearchUserBean> {
|
public class FansActivity extends AbsActivity implements OnItemClickListener<SearchUserBean> {
|
||||||
|
|
||||||
public static void forward(Context context, String toUid) {
|
public static void forward(Context context, String toUid) {
|
||||||
|
@ -6,17 +6,18 @@ import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
|
|||||||
import static com.yunbao.main.activity.MyWalletActivity.dis;
|
import static com.yunbao.main.activity.MyWalletActivity.dis;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.app.ProgressDialog;
|
import android.app.Activity;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
|
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
|
|
||||||
import com.adjust.sdk.Adjust;
|
import com.adjust.sdk.Adjust;
|
||||||
@ -27,13 +28,19 @@ import com.google.android.gms.ads.identifier.AdvertisingIdClient;
|
|||||||
import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
|
import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
|
||||||
import com.google.android.gms.common.GooglePlayServicesRepairableException;
|
import com.google.android.gms.common.GooglePlayServicesRepairableException;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.http.CommonHttpUtil;
|
import com.yunbao.common.http.CommonHttpUtil;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.GoogleBillingUtilNew;
|
import com.yunbao.common.utils.GoogleBillingUtilNew;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.views.TestWebViewClient;
|
import com.yunbao.main.views.TestWebViewClient;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -47,11 +54,24 @@ public class GoogleFragment extends Fragment {
|
|||||||
private WebView rlWebview;
|
private WebView rlWebview;
|
||||||
private String url;
|
private String url;
|
||||||
String adid = null;
|
String adid = null;
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
@SuppressLint("ValidFragment")
|
@SuppressLint("ValidFragment")
|
||||||
public GoogleFragment(String urls) {
|
public GoogleFragment(Activity context, String urls) {
|
||||||
url = urls;
|
url = urls;
|
||||||
Log.e("google", "111aa");
|
mContext = context;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
Bus.getOn(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDetach() {
|
||||||
|
super.onDetach();
|
||||||
|
Bus.getOff(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -90,7 +110,7 @@ public class GoogleFragment extends Fragment {
|
|||||||
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
|
|
||||||
|
|
||||||
rlWebview.addJavascriptInterface(new JsInteration(), "androidObject");
|
rlWebview.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, rlWebview).setPageClose(true), "androidObject");
|
||||||
|
|
||||||
TestWebViewClient testWebViewClient = new TestWebViewClient(getActivity(), rlWebview);
|
TestWebViewClient testWebViewClient = new TestWebViewClient(getActivity(), rlWebview);
|
||||||
|
|
||||||
@ -107,121 +127,106 @@ public class GoogleFragment extends Fragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private Handler payHandler = new Handler();
|
private Handler payHandler = new Handler();
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidNewGoToGooglePay(String ProductId, String OrderNumber, String MoneyUsd) {
|
|
||||||
Log.e(TAG, "ProductId" + ProductId + "OrderNumber" + OrderNumber + "MoneyUsd" + MoneyUsd);
|
|
||||||
mProductId = ProductId;
|
|
||||||
mOrderid = OrderNumber;
|
|
||||||
MoneyUsds = MoneyUsd;
|
|
||||||
// googleBillingUtil.purchaseInApp(getActivity(), mProductId);
|
|
||||||
GoogleBillingUtilNew.getInstance().setBillingListener(new GoogleBillingUtilNew.GoogleBillingListener() {
|
|
||||||
@Override
|
|
||||||
public void onPaySuccess(List<Purchase> list) {
|
|
||||||
for (Purchase purchase : list) {
|
|
||||||
for (int i = 0; i < list.size(); i++) {
|
|
||||||
int finalI = i;
|
|
||||||
payHandler.post(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
CommonHttpUtil.notifyGoogle(list.get(finalI).getPurchaseToken(), list.get(finalI).getOrderId(), mProductId, mOrderid, adid, new HttpCallback() {
|
|
||||||
@Override
|
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
|
||||||
if (code == 0) {
|
|
||||||
Bundle params = new Bundle();
|
|
||||||
params.putString("currency", "HKD");
|
|
||||||
params.putString("money", MoneyUsds);
|
|
||||||
logger.logEvent("FB_iap_Play", params);
|
|
||||||
|
|
||||||
|
|
||||||
Bundle fb_params = new Bundle();
|
|
||||||
fb_params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "HKD");
|
|
||||||
fb_params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, mProductId);
|
|
||||||
|
|
||||||
//fb官方事件记录充值
|
|
||||||
logger.logEvent(AppEventsConstants.EVENT_NAME_PURCHASED,
|
|
||||||
Double.parseDouble(MoneyUsds),
|
|
||||||
fb_params);
|
|
||||||
|
|
||||||
//Google官方充值通知
|
|
||||||
Bundle google_params = new Bundle();
|
|
||||||
google_params.putString("currency", "HKD");
|
|
||||||
google_params.putString("product_id", mProductId);
|
|
||||||
google_params.putString("transaction_id", mOrderid);
|
|
||||||
google_params.putString("value", MoneyUsds);
|
|
||||||
google_params.putString("price", MoneyUsds);
|
|
||||||
google_params.putString("quantity", "1");
|
|
||||||
|
|
||||||
mFirebaseAnalytics.logEvent("FS_iap_Play", google_params);
|
|
||||||
|
|
||||||
|
|
||||||
AdjustEvent adjustEvent1 = new AdjustEvent("cgssol");
|
|
||||||
Adjust.trackEvent(adjustEvent1);
|
|
||||||
CommonHttpUtil.setAdvertisingChannels("cgssol", new HttpCallback() {
|
|
||||||
@Override
|
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
|
||||||
if (code == 0) {
|
|
||||||
logger.logEvent("FB_iap_users", null);
|
|
||||||
mFirebaseAnalytics.logEvent("FS_iap_users", null);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
AdjustEvent adjustEvent2 = new AdjustEvent("tr8lb9");
|
|
||||||
adjustEvent2.setRevenue(Double.parseDouble(MoneyUsds),"HKD");
|
|
||||||
adjustEvent2.addCallbackParameter("GOrderid",purchase.getOrderId());
|
|
||||||
adjustEvent2.addCallbackParameter("POrderid",mOrderid);
|
|
||||||
adjustEvent2.addCallbackParameter("Uid", CommonAppConfig.getInstance().getUid());
|
|
||||||
adjustEvent2.addCallbackParameter("GADid",adid);
|
|
||||||
adjustEvent2.setOrderId(mOrderid);
|
|
||||||
Adjust.trackEvent(adjustEvent2);
|
|
||||||
|
|
||||||
dis();
|
|
||||||
ToastUtil.show("支付成功");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
Log.e("谷歌支付", purchase.toString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onPayFailed(int code, String msg) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}).checkSku(ProductId)
|
|
||||||
;
|
|
||||||
//下单
|
|
||||||
Bundle params = new Bundle();
|
|
||||||
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, mProductId);
|
|
||||||
params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "HKD");
|
|
||||||
logger.logEvent(AppEventsConstants.EVENT_NAME_INITIATED_CHECKOUT, Double.parseDouble(MoneyUsds),
|
|
||||||
params);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodBack() {
|
|
||||||
getActivity().onBackPressed();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoBack() {
|
|
||||||
getActivity().onBackPressed();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void release() {
|
public void release() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidNewGoToGooglePay")) {
|
||||||
|
mProductId = event.getProductId();
|
||||||
|
mOrderid = event.getOrderNumber();
|
||||||
|
MoneyUsds = event.getMoneyUsd();
|
||||||
|
GoogleBillingUtilNew.getInstance().setBillingListener(new GoogleBillingUtilNew.GoogleBillingListener() {
|
||||||
|
@Override
|
||||||
|
public void onPaySuccess(List<Purchase> list) {
|
||||||
|
for (Purchase purchase : list) {
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
int finalI = i;
|
||||||
|
payHandler.post(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
CommonHttpUtil.notifyGoogle(list.get(finalI).getPurchaseToken(), list.get(finalI).getOrderId(), mProductId, mOrderid, adid, new HttpCallback() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
|
if (code == 0) {
|
||||||
|
Bundle params = new Bundle();
|
||||||
|
params.putString("currency", "HKD");
|
||||||
|
params.putString("money", MoneyUsds);
|
||||||
|
logger.logEvent("FB_iap_Play", params);
|
||||||
|
|
||||||
|
|
||||||
|
Bundle fb_params = new Bundle();
|
||||||
|
fb_params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "HKD");
|
||||||
|
fb_params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, mProductId);
|
||||||
|
|
||||||
|
//fb官方事件记录充值
|
||||||
|
logger.logEvent(AppEventsConstants.EVENT_NAME_PURCHASED,
|
||||||
|
Double.parseDouble(MoneyUsds),
|
||||||
|
fb_params);
|
||||||
|
|
||||||
|
//Google官方充值通知
|
||||||
|
Bundle google_params = new Bundle();
|
||||||
|
google_params.putString("currency", "HKD");
|
||||||
|
google_params.putString("product_id", mProductId);
|
||||||
|
google_params.putString("transaction_id", mOrderid);
|
||||||
|
google_params.putString("value", MoneyUsds);
|
||||||
|
google_params.putString("price", MoneyUsds);
|
||||||
|
google_params.putString("quantity", "1");
|
||||||
|
|
||||||
|
mFirebaseAnalytics.logEvent("FS_iap_Play", google_params);
|
||||||
|
|
||||||
|
|
||||||
|
AdjustEvent adjustEvent1 = new AdjustEvent("cgssol");
|
||||||
|
Adjust.trackEvent(adjustEvent1);
|
||||||
|
CommonHttpUtil.setAdvertisingChannels("cgssol", new HttpCallback() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
|
if (code == 0) {
|
||||||
|
logger.logEvent("FB_iap_users", null);
|
||||||
|
mFirebaseAnalytics.logEvent("FS_iap_users", null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
AdjustEvent adjustEvent2 = new AdjustEvent("tr8lb9");
|
||||||
|
adjustEvent2.setRevenue(Double.parseDouble(MoneyUsds), "HKD");
|
||||||
|
adjustEvent2.addCallbackParameter("GOrderid", purchase.getOrderId());
|
||||||
|
adjustEvent2.addCallbackParameter("POrderid", mOrderid);
|
||||||
|
adjustEvent2.addCallbackParameter("Uid", CommonAppConfig.getInstance().getUid());
|
||||||
|
adjustEvent2.addCallbackParameter("GADid", adid);
|
||||||
|
adjustEvent2.setOrderId(mOrderid);
|
||||||
|
Adjust.trackEvent(adjustEvent2);
|
||||||
|
|
||||||
|
dis();
|
||||||
|
ToastUtil.show("支付成功");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
Log.e("谷歌支付", purchase.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onPayFailed(int code, String msg) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}).checkSku(event.getPostsId())
|
||||||
|
;
|
||||||
|
//下单
|
||||||
|
Bundle params = new Bundle();
|
||||||
|
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, mProductId);
|
||||||
|
params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "HKD");
|
||||||
|
logger.logEvent(AppEventsConstants.EVENT_NAME_INITIATED_CHECKOUT, Double.parseDouble(MoneyUsds),
|
||||||
|
params);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,6 @@ import android.widget.TextView;
|
|||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.RequiresApi;
|
import androidx.annotation.RequiresApi;
|
||||||
import androidx.fragment.app.FragmentActivity;
|
|
||||||
import androidx.viewpager.widget.ViewPager;
|
import androidx.viewpager.widget.ViewPager;
|
||||||
|
|
||||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||||
@ -42,7 +41,6 @@ import com.google.gson.Gson;
|
|||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.reflect.TypeToken;
|
||||||
import com.jakewharton.rxbinding3.view.RxView;
|
import com.jakewharton.rxbinding3.view.RxView;
|
||||||
import com.lzf.easyfloat.EasyFloat;
|
import com.lzf.easyfloat.EasyFloat;
|
||||||
import com.lzf.easyfloat.interfaces.OnPermissionResult;
|
|
||||||
import com.lzf.easyfloat.permission.PermissionUtils;
|
import com.lzf.easyfloat.permission.PermissionUtils;
|
||||||
import com.tencent.imsdk.v2.V2TIMCallback;
|
import com.tencent.imsdk.v2.V2TIMCallback;
|
||||||
import com.tencent.imsdk.v2.V2TIMManager;
|
import com.tencent.imsdk.v2.V2TIMManager;
|
||||||
@ -102,7 +100,7 @@ import com.yunbao.main.R;
|
|||||||
import com.yunbao.main.dialog.MainStartDialogFragment;
|
import com.yunbao.main.dialog.MainStartDialogFragment;
|
||||||
import com.yunbao.main.dialog.ReturnUserDialog;
|
import com.yunbao.main.dialog.ReturnUserDialog;
|
||||||
import com.yunbao.main.dialog.SigninDialog;
|
import com.yunbao.main.dialog.SigninDialog;
|
||||||
import com.yunbao.main.event.MainHomeCommunityToChatEvent;
|
import com.yunbao.common.event.MainHomeCommunityToChatEvent;
|
||||||
import com.yunbao.main.event.PDLiveConversationListEvent;
|
import com.yunbao.main.event.PDLiveConversationListEvent;
|
||||||
import com.yunbao.main.http.MainHttpConsts;
|
import com.yunbao.main.http.MainHttpConsts;
|
||||||
import com.yunbao.main.http.MainHttpUtil;
|
import com.yunbao.main.http.MainHttpUtil;
|
||||||
|
@ -121,28 +121,27 @@ public class MyWalletActivity extends AbsActivity {
|
|||||||
Log.i("tss", "首充");
|
Log.i("tss", "首充");
|
||||||
if (CommonAppConfig.IS_GOOGLE_PLAY == false) {
|
if (CommonAppConfig.IS_GOOGLE_PLAY == false) {
|
||||||
//链接版本
|
//链接版本
|
||||||
fragments = new Fragment[]{new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&first_page=1&m=Mall&a=walletcoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd"),
|
fragments = new Fragment[]{new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&first_page=1&m=Mall&a=walletcoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletgold&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd"),
|
new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletgold&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new WalletFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd")};
|
new WalletFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd")};
|
||||||
// fragments = new Fragment[]{new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&first_page=1&m=Mall&a=walletcoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()), new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletgold&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()), new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken())};
|
|
||||||
} else {
|
} else {
|
||||||
rView.setVisibility(View.VISIBLE);
|
rView.setVisibility(View.VISIBLE);
|
||||||
fragments = new Fragment[]{new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaycoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
fragments = new Fragment[]{new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaycoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaygole&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaygole&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new WalletFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken())};
|
new WalletFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken())};
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (CommonAppConfig.IS_GOOGLE_PLAY == false) {
|
if (CommonAppConfig.IS_GOOGLE_PLAY == false) {
|
||||||
Log.i("tss", "不是首充");
|
Log.i("tss", "不是首充");
|
||||||
//链接版本
|
//链接版本
|
||||||
fragments = new Fragment[]{new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletcoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd"),
|
fragments = new Fragment[]{new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletcoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletgold&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd"),
|
new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletgold&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new WalletFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()+ "&package_name=pd")};
|
new WalletFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd")};
|
||||||
} else {
|
} else {
|
||||||
rView.setVisibility(View.VISIBLE);
|
rView.setVisibility(View.VISIBLE);
|
||||||
fragments = new Fragment[]{new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaycoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
fragments = new Fragment[]{new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaycoin&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new GoogleFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaygole&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
new GoogleFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&a=googlepaygole&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&package_name=pd"),
|
||||||
new WalletFragment(CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken())};
|
new WalletFragment(this, CommonAppConfig.HOST + "/index.php?g=Appapi&m=Mall&first_page=1&a=walletbean&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken())};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
MagicIndicator magicIndicator = (MagicIndicator) findViewById(R.id.magic_indicator);
|
MagicIndicator magicIndicator = (MagicIndicator) findViewById(R.id.magic_indicator);
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
package com.yunbao.main.activity;
|
package com.yunbao.main.activity;
|
||||||
|
|
||||||
|
import static com.yunbao.common.CommonAppContext.logger;
|
||||||
|
import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
|
||||||
|
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
import android.content.ClipboardManager;
|
import android.content.ClipboardManager;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@ -7,16 +10,11 @@ import android.content.Intent;
|
|||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Looper;
|
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
|
||||||
import androidx.annotation.RequiresApi;
|
|
||||||
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -27,6 +25,8 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
|
||||||
import com.adjust.sdk.Adjust;
|
import com.adjust.sdk.Adjust;
|
||||||
import com.adjust.sdk.AdjustEvent;
|
import com.adjust.sdk.AdjustEvent;
|
||||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||||
@ -39,43 +39,38 @@ import com.yunbao.common.CommonAppConfig;
|
|||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.R;
|
import com.yunbao.common.R;
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
|
import com.yunbao.common.bean.LiveBean;
|
||||||
import com.yunbao.common.bean.UserBean;
|
import com.yunbao.common.bean.UserBean;
|
||||||
import com.yunbao.common.bean.VideoListBean;
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.common.interfaces.ActivityResultCallback;
|
import com.yunbao.common.interfaces.ActivityResultCallback;
|
||||||
import com.yunbao.common.interfaces.CommonCallback;
|
import com.yunbao.common.interfaces.CommonCallback;
|
||||||
import com.yunbao.common.interfaces.ImageResultCallback;
|
import com.yunbao.common.interfaces.ImageResultCallback;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DialogUitl;
|
import com.yunbao.common.utils.DialogUitl;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.ProcessImageUtil;
|
import com.yunbao.common.utils.ProcessImageUtil;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||||
import com.yunbao.live.activity.LiveReportActivity;
|
|
||||||
import com.yunbao.common.bean.LiveBean;
|
|
||||||
import com.yunbao.live.bean.ReportCommunityBean;
|
|
||||||
import com.yunbao.live.event.LiveRoomChangeEvent;
|
import com.yunbao.live.event.LiveRoomChangeEvent;
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
import com.yunbao.live.views.LiveRoomViewHolder;
|
import com.yunbao.live.views.LiveRoomViewHolder;
|
||||||
import com.yunbao.main.dialog.EncourageDialog;
|
import com.yunbao.main.dialog.EncourageDialog;
|
||||||
import com.yunbao.main.http.MainHttpUtil;
|
import com.yunbao.main.http.MainHttpUtil;
|
||||||
import com.yunbao.main.manager.imrongcloud.ConversationIMListManager;
|
|
||||||
import com.yunbao.video.activity.VideoPlayActivity;
|
import com.yunbao.video.activity.VideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
|
||||||
import com.yunbao.video.utils.VideoStorge;
|
import com.yunbao.video.utils.VideoStorge;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static com.yunbao.common.CommonAppContext.logger;
|
|
||||||
import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by Chen Haoxuan on 2022/4/19.
|
* Created by Chen Haoxuan on 2022/4/19.
|
||||||
@ -105,6 +100,7 @@ public class MyWebViewActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void main() {
|
protected void main() {
|
||||||
|
Bus.getOn(this);
|
||||||
mContext = this;
|
mContext = this;
|
||||||
urlNow = getIntent().getStringExtra(Constants.URL);
|
urlNow = getIntent().getStringExtra(Constants.URL);
|
||||||
Log.e("bb22", "1121212");
|
Log.e("bb22", "1121212");
|
||||||
@ -203,7 +199,7 @@ public class MyWebViewActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
mWebView.addJavascriptInterface(new JsInteration(), "androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView).setPageClose(true), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
mWebView.getSettings().setDomStorageEnabled(true);
|
mWebView.getSettings().setDomStorageEnabled(true);
|
||||||
@ -246,183 +242,6 @@ public class MyWebViewActivity extends AbsActivity {
|
|||||||
updataImg();
|
updataImg();
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidCommunityGift(String postsId) {
|
|
||||||
Constants.nowPostsId = postsId;
|
|
||||||
new Handler(Looper.getMainLooper()).post(new Runnable() {
|
|
||||||
public void run() {
|
|
||||||
EncourageDialog fragment = new EncourageDialog();
|
|
||||||
fragment.show(((MyWebViewActivity) mContext).getSupportFragmentManager(), "EncourageDialog");
|
|
||||||
}});}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void reportCommunity(String info) {
|
|
||||||
ReportCommunityBean reportCommunityBean = JSON.parseObject(info, ReportCommunityBean.class);
|
|
||||||
LiveReportActivity.forward3(mContext, reportCommunityBean.getDynamic_id(), 1, reportCommunityBean.getCommunity_type(), reportCommunityBean.getComment_id());
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void onBack() {
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
//拉黑不感兴趣
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidLoseInterest() {
|
|
||||||
EventBus.getDefault().post("blacklist");
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void modifyMydata() {
|
|
||||||
indexInto = 1;
|
|
||||||
RouteUtil.forwardEditProfileActivity();
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void reportUser(String touid) {
|
|
||||||
RouteUtil.forwardLiveReportActivity(touid);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodLookToLive(String liveId) {
|
|
||||||
//看直播
|
|
||||||
gotoLive(liveId);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void AndroidFellow() {
|
|
||||||
mFirebaseAnalytics.logEvent("FS_Follow", null);
|
|
||||||
logger.logEvent("FB_Follow", null);
|
|
||||||
AdjustEvent adjustEvent1 = new AdjustEvent("oess6a");
|
|
||||||
Adjust.trackEvent(adjustEvent1);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickSayHiBack(String uid, String name, String img) {
|
|
||||||
Constants.firstInto = 0;
|
|
||||||
ConversationIMListManager.get(mContext).jumpConversation(mContext, uid);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickFansList(String uid) {
|
|
||||||
FansActivity.forward(mContext, uid);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidPlayVideo(String list) {
|
|
||||||
list.toString();
|
|
||||||
if (!"undefined".equals(list)) {
|
|
||||||
JSONObject obj = JSON.parseObject(list);
|
|
||||||
int position = obj.getIntValue("video_index");
|
|
||||||
String videoListString = obj.getString("video_list");
|
|
||||||
List<VideoListBean> videoList = JSON.parseArray(videoListString, VideoListBean.class);
|
|
||||||
List<VideoBean> videoBeanList = new ArrayList<>();
|
|
||||||
for (VideoListBean videoListBean : videoList) {
|
|
||||||
JSONObject obj2 = JSON.parseObject(videoListBean.getContent());
|
|
||||||
String msg = obj2.getString("msg");
|
|
||||||
VideoBean videoBean = new VideoBean();
|
|
||||||
videoBean.setHref(videoListBean.getVideo());
|
|
||||||
videoBean.setCity("");
|
|
||||||
videoBean.setCommentNum(videoListBean.getComment_num());
|
|
||||||
videoBean.setAddtime(videoListBean.getCreate_time());
|
|
||||||
videoBean.setDatetime("");
|
|
||||||
videoBean.setDistance("");
|
|
||||||
videoBean.setId(videoListBean.getId());
|
|
||||||
videoBean.setLat("");
|
|
||||||
videoBean.setLike(0);
|
|
||||||
videoBean.setTitle(msg);
|
|
||||||
if ("2".endsWith(videoListBean.getIs_attention()) || "0".endsWith(videoListBean.getIs_attention())) {
|
|
||||||
videoBean.setAttent(2);
|
|
||||||
} else if ("1".endsWith(videoListBean.getIs_attention())) {
|
|
||||||
videoBean.setAttent(1);
|
|
||||||
} else {
|
|
||||||
videoBean.setAttent(-1);
|
|
||||||
}
|
|
||||||
UserBean userBean = new UserBean();
|
|
||||||
userBean.setAvatar(videoListBean.getUser_avatar());
|
|
||||||
userBean.setUserNiceName(videoListBean.getUser_name());
|
|
||||||
userBean.setId(videoListBean.getUser_id());
|
|
||||||
videoBean.setUserBean(userBean);
|
|
||||||
|
|
||||||
videoBean.setUid(videoListBean.getUser_id());
|
|
||||||
videoBeanList.add(videoBean);
|
|
||||||
}
|
|
||||||
VideoStorge.getInstance().put(Constants.VIDEO_COMMUNITY, videoBeanList);
|
|
||||||
VideoPlayActivity.forward(mContext, position, Constants.VIDEO_COMMUNITY, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void gotoHomePage(String indexStr) {
|
|
||||||
if (!"".equals(indexStr) && indexStr != null) {
|
|
||||||
int index = -1;
|
|
||||||
if ("0".equals(indexStr)) {
|
|
||||||
index = 0;
|
|
||||||
} else if ("1".equals(indexStr)) {
|
|
||||||
index = 1;
|
|
||||||
} else if ("2".equals(indexStr)) {
|
|
||||||
index = 2;
|
|
||||||
} else if ("3".equals(indexStr)) {
|
|
||||||
index = 3;
|
|
||||||
}
|
|
||||||
if (index != -1) {
|
|
||||||
finish();
|
|
||||||
Constants.isShowPage = index;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//打开无头部
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openWebView(String url) {
|
|
||||||
Constants.isTitle = false;
|
|
||||||
RouteUtil.forwardZhuangBanActivity(url);
|
|
||||||
}
|
|
||||||
|
|
||||||
//打开有头部
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openWebViewTitle(String url) {
|
|
||||||
Constants.isTitle = true;
|
|
||||||
RouteUtil.forwardZhuangBanActivity(url);
|
|
||||||
}
|
|
||||||
|
|
||||||
//跳转修改昵称
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openUpdataName() {
|
|
||||||
isUpdataUser = true;
|
|
||||||
Constants.myIntoIndex = 2;
|
|
||||||
Intent intent = new Intent(mContext, MyWebViewActivity2.class);
|
|
||||||
intent.putExtra(Constants.URL, CommonAppConfig.HOST + "/h5/table/Modify-information.html" + "?token=" + CommonAppConfig.getInstance().getToken() + "&uid=" + CommonAppConfig.getInstance().getUid());
|
|
||||||
startActivity(intent);
|
|
||||||
}
|
|
||||||
|
|
||||||
//跳转修改头像
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openUpdataAvater() {
|
|
||||||
isUpdataUser = true;
|
|
||||||
DialogUitl.showStringArrayDialog(mContext, new Integer[]{
|
|
||||||
com.yunbao.main.R.string.camera, com.yunbao.main.R.string.alumb}, new DialogUitl.StringArrayDialogCallback() {
|
|
||||||
@Override
|
|
||||||
public void onItemClick(String text, int tag) {
|
|
||||||
if (tag == com.yunbao.main.R.string.camera) {
|
|
||||||
mImageUtil.getImageByCamera();
|
|
||||||
} else {
|
|
||||||
mImageUtil.getImageByAlumb();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// RouteUtil.forwardEditProfileActivity();
|
|
||||||
}
|
|
||||||
|
|
||||||
//跳转修改签名
|
|
||||||
@JavascriptInterface
|
|
||||||
public void openUpdataAutograph() {
|
|
||||||
isUpdataUser = true;
|
|
||||||
forwardSign();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
||||||
|
|
||||||
@ -603,6 +422,7 @@ public class MyWebViewActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onDestroy() {
|
protected void onDestroy() {
|
||||||
|
Bus.getOff(this);
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
if (parent != null) {
|
if (parent != null) {
|
||||||
@ -719,4 +539,49 @@ public class MyWebViewActivity extends AbsActivity {
|
|||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
closeFinger();
|
closeFinger();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidCommunityGift")) {
|
||||||
|
Constants.nowPostsId = event.getPostsId();
|
||||||
|
EncourageDialog fragment = new EncourageDialog();
|
||||||
|
fragment.show(((MyWebViewActivity) mContext).getSupportFragmentManager(), "EncourageDialog");
|
||||||
|
}
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "modifyMydata")) {
|
||||||
|
indexInto = event.getIndexInto();
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||||
|
//看直播
|
||||||
|
gotoLive(event.getLiveId());
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "AndroidFellow")) {
|
||||||
|
mFirebaseAnalytics.logEvent("FS_Follow", null);
|
||||||
|
logger.logEvent("FB_Follow", null);
|
||||||
|
AdjustEvent adjustEvent1 = new AdjustEvent("oess6a");
|
||||||
|
Adjust.trackEvent(adjustEvent1);
|
||||||
|
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidClickSayHiBack")) {
|
||||||
|
Constants.firstInto = 0;
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidPlayVideo")) {
|
||||||
|
VideoStorge.getInstance().put(Constants.VIDEO_COMMUNITY, event.getVideoBeanList());
|
||||||
|
VideoPlayActivity.forward(mContext, event.getPosition(), Constants.VIDEO_COMMUNITY, 1);
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "openUpdataName")) {
|
||||||
|
isUpdataUser = event.isUpdataUser();
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "openUpdataAutograph")) {
|
||||||
|
isUpdataUser = true;
|
||||||
|
forwardSign();
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "openUpdataAvater")) {
|
||||||
|
isUpdataUser = true;
|
||||||
|
DialogUitl.showStringArrayDialog(mContext, new Integer[]{
|
||||||
|
com.yunbao.main.R.string.camera, com.yunbao.main.R.string.alumb}, new DialogUitl.StringArrayDialogCallback() {
|
||||||
|
@Override
|
||||||
|
public void onItemClick(String text, int tag) {
|
||||||
|
if (tag == com.yunbao.main.R.string.camera) {
|
||||||
|
mImageUtil.getImageByCamera();
|
||||||
|
} else {
|
||||||
|
mImageUtil.getImageByAlumb();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,6 +24,7 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
@ -42,14 +43,14 @@ import com.yunbao.live.activity.LiveAudienceActivity;
|
|||||||
import com.yunbao.live.activity.LiveReportActivity;
|
import com.yunbao.live.activity.LiveReportActivity;
|
||||||
import com.yunbao.live.activity.SystemMessageActivity;
|
import com.yunbao.live.activity.SystemMessageActivity;
|
||||||
import com.yunbao.common.bean.LiveBean;
|
import com.yunbao.common.bean.LiveBean;
|
||||||
import com.yunbao.live.bean.ReportCommunityBean;
|
import com.yunbao.common.bean.ReportCommunityBean;
|
||||||
import com.yunbao.live.event.LiveRoomChangeEvent;
|
import com.yunbao.live.event.LiveRoomChangeEvent;
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
import com.yunbao.live.views.LiveRoomViewHolder;
|
import com.yunbao.live.views.LiveRoomViewHolder;
|
||||||
import com.yunbao.main.dialog.EncourageDialog;
|
import com.yunbao.main.dialog.EncourageDialog;
|
||||||
import com.yunbao.video.activity.VideoPlayActivity;
|
import com.yunbao.video.activity.VideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.utils.VideoStorge;
|
import com.yunbao.video.utils.VideoStorge;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
@ -61,6 +62,7 @@ import java.util.List;
|
|||||||
/**
|
/**
|
||||||
* Created by Chen Haoxuan on 2022/4/19.
|
* Created by Chen Haoxuan on 2022/4/19.
|
||||||
*/
|
*/
|
||||||
|
@Route(path = RouteUtil.PATH_MYWEBVIEWACTIVTITY2)
|
||||||
public class MyWebViewActivity2 extends AbsActivity {
|
public class MyWebViewActivity2 extends AbsActivity {
|
||||||
|
|
||||||
private FrameLayout ft_title;
|
private FrameLayout ft_title;
|
||||||
|
@ -1,18 +1,16 @@
|
|||||||
package com.yunbao.main.activity;
|
package com.yunbao.main.activity;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import static android.util.Log.i;
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
|
||||||
|
|
||||||
import android.webkit.JavascriptInterface;
|
import android.os.Bundle;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
|
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.views.TestWebViewClient;
|
import com.yunbao.main.views.TestWebViewClient;
|
||||||
|
|
||||||
import static android.util.Log.i;
|
|
||||||
|
|
||||||
//充值h5
|
//充值h5
|
||||||
public class RechargeActivity extends AbsActivity {
|
public class RechargeActivity extends AbsActivity {
|
||||||
|
|
||||||
@ -32,61 +30,20 @@ public class RechargeActivity extends AbsActivity {
|
|||||||
|
|
||||||
webSettings.setJavaScriptEnabled(true); // 是否开启JS支持
|
webSettings.setJavaScriptEnabled(true); // 是否开启JS支持
|
||||||
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
//
|
|
||||||
// webSettings.setUseWideViewPort(true); // 缩放至屏幕大小
|
|
||||||
// webSettings.setLoadWithOverviewMode(true); // 缩放至屏幕大小
|
|
||||||
// webSettings.setSupportZoom(true); // 是否支持缩放
|
|
||||||
// webSettings.setBuiltInZoomControls(true); // 是否支持缩放变焦,前提是支持缩放
|
|
||||||
// webSettings.setDisplayZoomControls(false); // 是否隐藏缩放控件
|
|
||||||
//
|
|
||||||
// webSettings.setAllowFileAccess(true); // 是否允许访问文件
|
|
||||||
// webSettings.setDomStorageEnabled(false); // 是否节点缓存
|
|
||||||
// webSettings.setDatabaseEnabled(false); // 是否数据缓存
|
|
||||||
// webSettings.setAppCacheEnabled(false); // 是否应用缓存
|
|
||||||
//
|
|
||||||
// webSettings.setMediaPlaybackRequiresUserGesture(false); // 是否要手势触发媒体
|
|
||||||
// webSettings.setStandardFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setFixedFontFamily("monospace"); // 设置字体库格式
|
|
||||||
// webSettings.setSansSerifFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setSerifFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setCursiveFontFamily("cursive"); // 设置字体库格式
|
|
||||||
// webSettings.setFantasyFontFamily("fantasy"); // 设置字体库格式
|
|
||||||
// webSettings.setTextZoom(100); // 设置文本缩放的百分比
|
|
||||||
// webSettings.setMinimumFontSize(8); // 设置文本字体的最小值(1~72)
|
|
||||||
// webSettings.setDefaultFontSize(16); // 设置文本字体默认的大小
|
|
||||||
//
|
|
||||||
// webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); // 按规则重新布局
|
|
||||||
// webSettings.setLoadsImagesAutomatically(true); // 是否自动加载图片
|
|
||||||
// webSettings.setDefaultTextEncodingName("UTF-8"); // 设置编码格式
|
|
||||||
// webSettings.setNeedInitialFocus(true); // 是否需要获取焦点
|
|
||||||
// webSettings.setGeolocationEnabled(false); // 设置开启定位功能
|
|
||||||
// webSettings.setBlockNetworkLoads(false); // 是否从网络获取资源
|
|
||||||
// rlWebview.addJavascriptInterface(new JsInteration(), "androidObject");
|
|
||||||
// rlWebview.setWebContentsDebuggingEnabled(true);
|
|
||||||
|
|
||||||
|
|
||||||
rlWebview.addJavascriptInterface(new JsInteration(),"androidObject");
|
rlWebview.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, rlWebview).setPageClose(true), "androidObject");
|
||||||
|
|
||||||
TestWebViewClient testWebViewClient = new TestWebViewClient(this,rlWebview);
|
TestWebViewClient testWebViewClient = new TestWebViewClient(this, rlWebview);
|
||||||
|
|
||||||
rlWebview.setWebViewClient(testWebViewClient);
|
rlWebview.setWebViewClient(testWebViewClient);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodBack() {
|
|
||||||
RechargeActivity.this.finish();
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoBack() {
|
|
||||||
RechargeActivity.this.finish();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
return R.layout.activity_recharge;
|
return R.layout.activity_recharge;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initView() {
|
private void initView() {
|
||||||
|
@ -2,55 +2,45 @@ package com.yunbao.main.activity;
|
|||||||
|
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
|
import android.app.Activity;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.fragment.app.Fragment;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
|
|
||||||
|
import androidx.fragment.app.Fragment;
|
||||||
|
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.views.TestWebViewClient;
|
import com.yunbao.main.views.TestWebViewClient;
|
||||||
|
|
||||||
import static android.util.Log.i;
|
|
||||||
|
|
||||||
@SuppressLint("ValidFragment")
|
@SuppressLint("ValidFragment")
|
||||||
public class WalletFragment extends Fragment {
|
public class WalletFragment extends Fragment {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private View view;
|
private View view;
|
||||||
|
|
||||||
private WebView rlWebview;
|
private WebView rlWebview;
|
||||||
private String url;
|
private String url;
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
@SuppressLint("ValidFragment")
|
@SuppressLint("ValidFragment")
|
||||||
public WalletFragment(String urls) {
|
public WalletFragment(Activity context, String urls) {
|
||||||
Log.e("google","222aa");
|
Log.e("google", "222aa");
|
||||||
url = urls;
|
url = urls;
|
||||||
|
mContext = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodBack() {
|
|
||||||
MyWalletActivity.dis();
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidGoBack() {
|
|
||||||
MyWalletActivity.dis();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
//通过参数中的布局填充获取对应布局
|
//通过参数中的布局填充获取对应布局
|
||||||
view =inflater.inflate(R.layout.activity_recharge,container,false);
|
view = inflater.inflate(R.layout.activity_recharge, container, false);
|
||||||
rlWebview = (WebView) view.findViewById(R.id.rlWebview);
|
rlWebview = (WebView) view.findViewById(R.id.rlWebview);
|
||||||
Log.e("ttt",url);
|
Log.e("ttt", url);
|
||||||
rlWebview.loadUrl(url);
|
rlWebview.loadUrl(url);
|
||||||
|
|
||||||
WebSettings webSettings = rlWebview.getSettings();
|
WebSettings webSettings = rlWebview.getSettings();
|
||||||
@ -61,58 +51,16 @@ public class WalletFragment extends Fragment {
|
|||||||
|
|
||||||
webSettings.setJavaScriptEnabled(true); // 是否开启JS支持
|
webSettings.setJavaScriptEnabled(true); // 是否开启JS支持
|
||||||
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
//
|
|
||||||
webSettings.setUseWideViewPort(true); // 缩放至屏幕大小
|
|
||||||
webSettings.setLoadWithOverviewMode(true); // 缩放至屏幕大小
|
|
||||||
webSettings.setSupportZoom(true); // 是否支持缩放
|
|
||||||
webSettings.setBuiltInZoomControls(true); // 是否支持缩放变焦,前提是支持缩放
|
|
||||||
// webSettings.setDisplayZoomControls(false); // 是否隐藏缩放控件
|
|
||||||
//
|
|
||||||
// webSettings.setAllowFileAccess(true); // 是否允许访问文件
|
|
||||||
// webSettings.setDomStorageEnabled(false); // 是否节点缓存
|
|
||||||
// webSettings.setDatabaseEnabled(false); // 是否数据缓存
|
|
||||||
// webSettings.setAppCacheEnabled(false); // 是否应用缓存
|
|
||||||
//
|
|
||||||
// webSettings.setMediaPlaybackRequiresUserGesture(false); // 是否要手势触发媒体
|
|
||||||
// webSettings.setStandardFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setFixedFontFamily("monospace"); // 设置字体库格式
|
|
||||||
// webSettings.setSansSerifFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setSerifFontFamily("sans-serif"); // 设置字体库格式
|
|
||||||
// webSettings.setCursiveFontFamily("cursive"); // 设置字体库格式
|
|
||||||
// webSettings.setFantasyFontFamily("fantasy"); // 设置字体库格式
|
|
||||||
// webSettings.setTextZoom(100); // 设置文本缩放的百分比
|
|
||||||
// webSettings.setMinimumFontSize(8); // 设置文本字体的最小值(1~72)
|
|
||||||
// webSettings.setDefaultFontSize(16); // 设置文本字体默认的大小
|
|
||||||
//
|
|
||||||
// webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); // 按规则重新布局
|
|
||||||
// webSettings.setLoadsImagesAutomatically(true); // 是否自动加载图片
|
|
||||||
// webSettings.setDefaultTextEncodingName("UTF-8"); // 设置编码格式
|
|
||||||
// webSettings.setNeedInitialFocus(true); // 是否需要获取焦点
|
|
||||||
// webSettings.setGeolocationEnabled(false); // 设置开启定位功能
|
|
||||||
// webSettings.setBlockNetworkLoads(false); // 是否从网络获取资源
|
|
||||||
// rlWebview.addJavascriptInterface(new JsInteration(), "androidObject");
|
|
||||||
// rlWebview.setWebContentsDebuggingEnabled(true);
|
|
||||||
|
|
||||||
|
|
||||||
rlWebview.addJavascriptInterface(new JsInteration(),"androidObject");
|
rlWebview.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, rlWebview).setPageClose(true), "androidObject");
|
||||||
|
|
||||||
TestWebViewClient testWebViewClient = new TestWebViewClient(getActivity(),rlWebview);
|
TestWebViewClient testWebViewClient = new TestWebViewClient(getActivity(), rlWebview);
|
||||||
|
|
||||||
rlWebview.setWebViewClient(testWebViewClient);
|
rlWebview.setWebViewClient(testWebViewClient);
|
||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// //js调用原生
|
|
||||||
// public class JsInteration {
|
|
||||||
// @JavascriptInterface
|
|
||||||
// public void androidMethodBack() {
|
|
||||||
// RechargeActivity.this.finish();
|
|
||||||
// }
|
|
||||||
// @JavascriptInterface
|
|
||||||
// public void androidGoBack() {
|
|
||||||
// RechargeActivity.this.finish();
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,14 +6,11 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.provider.MediaStore;
|
|
||||||
import androidx.annotation.RequiresApi;
|
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.provider.MediaStore;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -23,24 +20,32 @@ import android.widget.ImageView;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.activity.AbsActivity;
|
import com.yunbao.common.activity.AbsActivity;
|
||||||
|
import com.yunbao.common.bean.LiveBean;
|
||||||
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||||
import com.yunbao.live.activity.WebViewActivityMedal;
|
import com.yunbao.live.activity.WebViewActivityMedal;
|
||||||
import com.yunbao.common.bean.LiveBean;
|
|
||||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
|
|
||||||
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
public class WeekWebViewActivity extends AbsActivity {
|
public class WeekWebViewActivity extends AbsActivity {
|
||||||
|
|
||||||
private ProgressBar mProgressBar;
|
private ProgressBar mProgressBar;
|
||||||
@ -50,6 +55,7 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
private ValueCallback<Uri> mValueCallback;
|
private ValueCallback<Uri> mValueCallback;
|
||||||
private ValueCallback<Uri[]> mValueCallback2;
|
private ValueCallback<Uri[]> mValueCallback2;
|
||||||
private ImageView mIvQuestion;
|
private ImageView mIvQuestion;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
return R.layout.activity_week_web_view;
|
return R.layout.activity_week_web_view;
|
||||||
@ -57,6 +63,7 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void main() {
|
protected void main() {
|
||||||
|
Bus.getOn(this);
|
||||||
String url = getIntent().getStringExtra(Constants.URL);
|
String url = getIntent().getStringExtra(Constants.URL);
|
||||||
L.e("H5---6>" + url);
|
L.e("H5---6>" + url);
|
||||||
LinearLayout rootView = (LinearLayout) findViewById(com.yunbao.common.R.id.rootView);
|
LinearLayout rootView = (LinearLayout) findViewById(com.yunbao.common.R.id.rootView);
|
||||||
@ -128,7 +135,7 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
mWebView.addJavascriptInterface(new JsInteration(),"androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(mContext, mWebView).setPageClose(true), "androidObject");
|
||||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
|
||||||
@ -137,27 +144,9 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public String androidMethodLookLive(String uId,String liveId,String isLiving) {
|
|
||||||
//跳转个人主页
|
|
||||||
RouteUtil.forwardUserHome(mContext, liveId,0);
|
|
||||||
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodLookToLive(String liveId) {
|
|
||||||
//看直播
|
|
||||||
gotoLive(liveId);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
private LiveRoomCheckLivePresenter mCheckLivePresenter;
|
||||||
|
|
||||||
private void gotoLive(final String live_id){
|
private void gotoLive(final String live_id) {
|
||||||
LiveHttpUtil.getLiveInfo(live_id, new HttpCallback() {
|
LiveHttpUtil.getLiveInfo(live_id, new HttpCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(int code, String msg, String[] info) {
|
public void onSuccess(int code, String msg, String[] info) {
|
||||||
@ -178,8 +167,8 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
mCheckLivePresenter.checkLive(liveBean);
|
mCheckLivePresenter.checkLive(liveBean);
|
||||||
}else{
|
} else {
|
||||||
RouteUtil.forwardUserHome(mContext, live_id,0);
|
RouteUtil.forwardUserHome(mContext, live_id, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -189,7 +178,7 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
/**
|
/**
|
||||||
* 显示个人资料弹窗
|
* 显示个人资料弹窗
|
||||||
*/
|
*/
|
||||||
private void showUserDialog(String toUid,String liveId) {
|
private void showUserDialog(String toUid, String liveId) {
|
||||||
if (!TextUtils.isEmpty(liveId) && !TextUtils.isEmpty(toUid)) {
|
if (!TextUtils.isEmpty(liveId) && !TextUtils.isEmpty(toUid)) {
|
||||||
LiveUserDialogFragment fragment = new LiveUserDialogFragment();
|
LiveUserDialogFragment fragment = new LiveUserDialogFragment();
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
@ -299,6 +288,7 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onDestroy() {
|
protected void onDestroy() {
|
||||||
|
Bus.getOff(this);
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
if (parent != null) {
|
if (parent != null) {
|
||||||
@ -319,4 +309,13 @@ public class WeekWebViewActivity extends AbsActivity {
|
|||||||
ToastUtil.show(getString(com.yunbao.common.R.string.copy_success));
|
ToastUtil.show(getString(com.yunbao.common.R.string.copy_success));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||||
|
//看直播
|
||||||
|
gotoLive(event.getLiveId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ import com.yunbao.common.adapter.RefreshAdapter;
|
|||||||
import com.yunbao.common.bean.UserBean;
|
import com.yunbao.common.bean.UserBean;
|
||||||
import com.yunbao.common.glide.ImgLoader;
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ import android.widget.TextView;
|
|||||||
import com.yunbao.common.adapter.RefreshAdapter;
|
import com.yunbao.common.adapter.RefreshAdapter;
|
||||||
import com.yunbao.common.glide.ImgLoader;
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/12/14.
|
* Created by cxf on 2018/12/14.
|
||||||
|
@ -47,6 +47,12 @@ public class EncourageDialog extends AbsDialogFragment implements View.OnClickLi
|
|||||||
private String id, giftId;
|
private String id, giftId;
|
||||||
private GridLayoutManager gridLayoutManager;
|
private GridLayoutManager gridLayoutManager;
|
||||||
|
|
||||||
|
|
||||||
|
public EncourageDialog setId(String id) {
|
||||||
|
this.id = id;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
return R.layout.dialog_encourage;
|
return R.layout.dialog_encourage;
|
||||||
@ -89,8 +95,6 @@ public class EncourageDialog extends AbsDialogFragment implements View.OnClickLi
|
|||||||
findViewById(R.id.lt_gift1).setOnClickListener(this);
|
findViewById(R.id.lt_gift1).setOnClickListener(this);
|
||||||
findViewById(R.id.lt_gift2).setOnClickListener(this);
|
findViewById(R.id.lt_gift2).setOnClickListener(this);
|
||||||
findViewById(R.id.lt_gift3).setOnClickListener(this);
|
findViewById(R.id.lt_gift3).setOnClickListener(this);
|
||||||
|
|
||||||
id = Constants.nowPostsId;
|
|
||||||
encourageList = new ArrayList<>();
|
encourageList = new ArrayList<>();
|
||||||
getData();
|
getData();
|
||||||
}
|
}
|
||||||
|
@ -1,36 +1,23 @@
|
|||||||
package com.yunbao.main.dialog;
|
package com.yunbao.main.dialog;
|
||||||
|
|
||||||
import android.os.Build;
|
import static com.yunbao.common.utils.RouteUtil.PATH_REWARD;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.util.Log;
|
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.Window;
|
import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.WebSettings;
|
|
||||||
import android.webkit.WebView;
|
|
||||||
import android.webkit.WebViewClient;
|
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.alibaba.android.arouter.launcher.ARouter;
|
import com.alibaba.android.arouter.launcher.ARouter;
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
|
||||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
import com.yunbao.common.utils.L;
|
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
|
||||||
import com.yunbao.live.activity.LiveActivity;
|
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
|
||||||
import com.yunbao.live.dialog.LiveFansFragment;
|
|
||||||
import com.yunbao.live.views.LiveRoomViewHolder;
|
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
|
|
||||||
import static com.yunbao.common.utils.RouteUtil.PATH_REWARD;
|
|
||||||
|
|
||||||
public class SigninDialog extends AbsDialogFragment {
|
public class SigninDialog extends AbsDialogFragment {
|
||||||
TextView gold,sign_day;
|
TextView gold, sign_day;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getLayoutId() {
|
protected int getLayoutId() {
|
||||||
@ -68,7 +55,7 @@ public class SigninDialog extends AbsDialogFragment {
|
|||||||
goto_sign.setOnClickListener(new View.OnClickListener() {
|
goto_sign.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View view) {
|
public void onClick(View view) {
|
||||||
ARouter.getInstance().build(PATH_REWARD).withString("url", CommonAppConfig.HOST +"/index.php?g=Appapi&m=task&a=index"+ "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()).navigation();
|
ARouter.getInstance().build(PATH_REWARD).withString("url", CommonAppConfig.HOST + "/index.php?g=Appapi&m=task&a=index" + "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken()).navigation();
|
||||||
dismiss();
|
dismiss();
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -85,7 +72,7 @@ public class SigninDialog extends AbsDialogFragment {
|
|||||||
if (bundle == null) {
|
if (bundle == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
gold.setText(bundle.getString("send_gold")+"金豆+"+bundle.getString("send_exp")+"EXP");
|
gold.setText(bundle.getString("send_gold") + "金豆+" + bundle.getString("send_exp") + "EXP");
|
||||||
sign_day.setText("本月您已累積簽到"+bundle.getString("sign_day")+"天,");
|
sign_day.setText("本月您已累積簽到" + bundle.getString("sign_day") + "天,");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
package com.yunbao.main.views;
|
package com.yunbao.main.views;
|
||||||
|
|
||||||
|
import static android.content.Context.CLIPBOARD_SERVICE;
|
||||||
|
import static com.yunbao.common.utils.WordUtil.getString;
|
||||||
|
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
import android.content.ClipboardManager;
|
import android.content.ClipboardManager;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@ -9,14 +12,10 @@ import android.os.Build;
|
|||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
import android.provider.MediaStore;
|
import android.provider.MediaStore;
|
||||||
|
|
||||||
import androidx.annotation.RequiresApi;
|
|
||||||
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.JavascriptInterface;
|
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebSettings;
|
import android.webkit.WebSettings;
|
||||||
@ -26,45 +25,38 @@ import android.widget.LinearLayout;
|
|||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.HtmlConfig;
|
import com.yunbao.common.HtmlConfig;
|
||||||
import com.yunbao.common.bean.UserBean;
|
import com.yunbao.common.bean.LiveBean;
|
||||||
import com.yunbao.common.bean.VideoListBean;
|
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||||
|
import com.yunbao.common.utils.Bus;
|
||||||
import com.yunbao.common.utils.DpUtil;
|
import com.yunbao.common.utils.DpUtil;
|
||||||
|
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.RouteUtil;
|
import com.yunbao.common.utils.RouteUtil;
|
||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||||
import com.yunbao.live.activity.LiveReportActivity;
|
|
||||||
import com.yunbao.common.bean.LiveBean;
|
|
||||||
import com.yunbao.live.bean.ReportCommunityBean;
|
|
||||||
import com.yunbao.live.http.LiveHttpUtil;
|
import com.yunbao.live.http.LiveHttpUtil;
|
||||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||||
import com.yunbao.live.views.LoadingView;
|
import com.yunbao.live.views.LoadingView;
|
||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.activity.FansActivity;
|
|
||||||
import com.yunbao.main.activity.MainActivity;
|
import com.yunbao.main.activity.MainActivity;
|
||||||
import com.yunbao.main.dialog.EncourageDialog;
|
import com.yunbao.main.dialog.EncourageDialog;
|
||||||
import com.yunbao.main.event.MainHomeCommunityToChatEvent;
|
|
||||||
import com.yunbao.main.utils.BottomBarUtil;
|
import com.yunbao.main.utils.BottomBarUtil;
|
||||||
import com.yunbao.video.activity.VideoPlayActivity;
|
import com.yunbao.video.activity.VideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
|
||||||
import com.yunbao.video.utils.VideoStorge;
|
import com.yunbao.video.utils.VideoStorge;
|
||||||
|
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
import org.greenrobot.eventbus.ThreadMode;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static android.content.Context.CLIPBOARD_SERVICE;
|
|
||||||
import static com.yunbao.common.utils.WordUtil.getString;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by Chen Haoxuan on 2022/3/25.
|
* Created by Chen Haoxuan on 2022/3/25.
|
||||||
@ -93,9 +85,8 @@ public class MainHomeCommunityViewHolder extends AbsMainHomeChildViewHolder impl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init() {
|
public void init() {
|
||||||
|
Bus.getOn(this);
|
||||||
String url = HtmlConfig.ENCOURAGE + "?t=" + Math.random() + "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
String url = HtmlConfig.ENCOURAGE + "?t=" + Math.random() + "&uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
|
||||||
|
|
||||||
L.e("H5---9>" + url);
|
|
||||||
final LinearLayout rootView = (LinearLayout) findViewById(R.id.rootView);
|
final LinearLayout rootView = (LinearLayout) findViewById(R.id.rootView);
|
||||||
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
mProgressBar = (ProgressBar) findViewById(R.id.progressbar);
|
||||||
mWebView = new WebView(mContext);
|
mWebView = new WebView(mContext);
|
||||||
@ -120,7 +111,7 @@ public class MainHomeCommunityViewHolder extends AbsMainHomeChildViewHolder impl
|
|||||||
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);// 不加载缓存内容
|
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);// 不加载缓存内容
|
||||||
|
|
||||||
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); // 是否允许JS打开新窗口
|
||||||
mWebView.addJavascriptInterface(new JsInteration(), "androidObject");
|
mWebView.addJavascriptInterface(new JavascriptInterfaceUtils(nowMainActivity, mWebView), "androidObject");
|
||||||
|
|
||||||
rootView.addView(mWebView);
|
rootView.addView(mWebView);
|
||||||
|
|
||||||
@ -223,100 +214,6 @@ public class MainHomeCommunityViewHolder extends AbsMainHomeChildViewHolder impl
|
|||||||
public void loadNewUrl() {
|
public void loadNewUrl() {
|
||||||
}
|
}
|
||||||
|
|
||||||
//js调用原生
|
|
||||||
public class JsInteration {
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidCommunityGift(String postsId) {
|
|
||||||
Constants.nowPostsId = postsId;
|
|
||||||
new Handler(Looper.getMainLooper()).post(new Runnable() {
|
|
||||||
public void run() {
|
|
||||||
EncourageDialog fragment = new EncourageDialog();
|
|
||||||
if (mContext instanceof MainActivity) {
|
|
||||||
fragment.show(((MainActivity) mContext).getSupportFragmentManager(), "EncourageDialog");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void reportCommunity(String info) {
|
|
||||||
ReportCommunityBean reportCommunityBean = JSON.parseObject(info, ReportCommunityBean.class);
|
|
||||||
LiveReportActivity.forward3(mContext, reportCommunityBean.getDynamic_id(), 1, reportCommunityBean.getCommunity_type(), reportCommunityBean.getComment_id());
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void reportUser(String touid) {
|
|
||||||
LiveReportActivity.forward(mContext, touid);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void isCloseNavigation(String isClose) {
|
|
||||||
if(nowMainActivity!=null) {
|
|
||||||
nowMainActivity.isClose(isClose);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidPlayVideo(String list) {
|
|
||||||
list.toString();
|
|
||||||
if (!"undefined".equals(list)) {
|
|
||||||
JSONObject obj = JSON.parseObject(list);
|
|
||||||
int position = obj.getIntValue("video_index");
|
|
||||||
String videoListString = obj.getString("video_list");
|
|
||||||
List<VideoListBean> videoList = JSON.parseArray(videoListString, VideoListBean.class);
|
|
||||||
List<VideoBean> videoBeanList = new ArrayList<>();
|
|
||||||
for (VideoListBean videoListBean : videoList) {
|
|
||||||
JSONObject obj2 = JSON.parseObject(videoListBean.getContent());
|
|
||||||
String msg = obj2.getString("msg");
|
|
||||||
VideoBean videoBean = new VideoBean();
|
|
||||||
videoBean.setHref(videoListBean.getVideo());
|
|
||||||
videoBean.setCity("");
|
|
||||||
videoBean.setCommentNum(videoListBean.getComment_num());
|
|
||||||
videoBean.setAddtime(videoListBean.getCreate_time());
|
|
||||||
videoBean.setDatetime("");
|
|
||||||
videoBean.setDistance("");
|
|
||||||
videoBean.setId(videoListBean.getId());
|
|
||||||
videoBean.setLat("");
|
|
||||||
videoBean.setLike(0);
|
|
||||||
videoBean.setTitle(msg);
|
|
||||||
if ("2".endsWith(videoListBean.getIs_attention()) || "0".endsWith(videoListBean.getIs_attention())) {
|
|
||||||
videoBean.setAttent(2);
|
|
||||||
} else if ("1".endsWith(videoListBean.getIs_attention())) {
|
|
||||||
videoBean.setAttent(1);
|
|
||||||
} else {
|
|
||||||
videoBean.setAttent(-1);
|
|
||||||
}
|
|
||||||
UserBean userBean = new UserBean();
|
|
||||||
userBean.setAvatar(videoListBean.getUser_avatar());
|
|
||||||
userBean.setUserNiceName(videoListBean.getUser_name());
|
|
||||||
userBean.setId(videoListBean.getUser_id());
|
|
||||||
videoBean.setUserBean(userBean);
|
|
||||||
|
|
||||||
videoBean.setUid(videoListBean.getUser_id());
|
|
||||||
videoBeanList.add(videoBean);
|
|
||||||
}
|
|
||||||
VideoStorge.getInstance().put(Constants.VIDEO_COMMUNITY, videoBeanList);
|
|
||||||
VideoPlayActivity.forward(mContext, position, Constants.VIDEO_COMMUNITY, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickSayHiBack(String uid, String name, String img) {
|
|
||||||
EventBus.getDefault().post(new MainHomeCommunityToChatEvent().setTargetId(uid));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidMethodLookToLive(String liveId) {
|
|
||||||
//看直播
|
|
||||||
gotoLive(liveId);
|
|
||||||
}
|
|
||||||
|
|
||||||
@JavascriptInterface
|
|
||||||
public void androidClickFansList(String uid) {
|
|
||||||
FansActivity.forward(mContext, uid);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setTitle(String title) {
|
protected void setTitle(String title) {
|
||||||
TextView titleView = (TextView) findViewById(R.id.titleView);
|
TextView titleView = (TextView) findViewById(R.id.titleView);
|
||||||
@ -378,6 +275,7 @@ public class MainHomeCommunityViewHolder extends AbsMainHomeChildViewHolder impl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
|
Bus.getOff(this);
|
||||||
if (mWebView != null) {
|
if (mWebView != null) {
|
||||||
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
ViewGroup parent = (ViewGroup) mWebView.getParent();
|
||||||
if (parent != null) {
|
if (parent != null) {
|
||||||
@ -429,4 +327,30 @@ public class MainHomeCommunityViewHolder extends AbsMainHomeChildViewHolder impl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onJavascriptInterfaceEvent(JavascriptInterfaceEvent event) {
|
||||||
|
if (!TextUtils.isEmpty(event.getMethod())) {
|
||||||
|
if (TextUtils.equals(event.getMethod(), "androidCommunityGift")) {
|
||||||
|
new Handler(Looper.getMainLooper()).post(new Runnable() {
|
||||||
|
public void run() {
|
||||||
|
EncourageDialog fragment = new EncourageDialog();
|
||||||
|
fragment.setId(event.getPostsId());
|
||||||
|
if (mContext instanceof MainActivity) {
|
||||||
|
fragment.show(((MainActivity) mContext).getSupportFragmentManager(), "EncourageDialog");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "isCloseNavigation")) {
|
||||||
|
if (nowMainActivity != null) {
|
||||||
|
nowMainActivity.isClose(event.getIsClose());
|
||||||
|
}
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidPlayVideo")) {
|
||||||
|
VideoStorge.getInstance().put(Constants.VIDEO_COMMUNITY, event.getVideoBeanList());
|
||||||
|
VideoPlayActivity.forward(mContext, event.getPosition(), Constants.VIDEO_COMMUNITY, 1);
|
||||||
|
} else if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||||
|
//看直播
|
||||||
|
gotoLive(event.getLiveId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@ import com.yunbao.common.interfaces.OnItemClickListener;
|
|||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.adapter.MainHomeVideoAdapter;
|
import com.yunbao.main.adapter.MainHomeVideoAdapter;
|
||||||
import com.yunbao.video.activity.VideoPlayActivity;
|
import com.yunbao.video.activity.VideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.event.VideoDeleteEvent;
|
import com.yunbao.video.event.VideoDeleteEvent;
|
||||||
import com.yunbao.video.event.VideoScrollPageEvent;
|
import com.yunbao.video.event.VideoScrollPageEvent;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
|
@ -17,7 +17,7 @@ import com.yunbao.live.views.AbsUserHomeViewHolder;
|
|||||||
import com.yunbao.main.R;
|
import com.yunbao.main.R;
|
||||||
import com.yunbao.main.adapter.VideoHomeAdapter;
|
import com.yunbao.main.adapter.VideoHomeAdapter;
|
||||||
import com.yunbao.video.activity.VideoPlayActivity;
|
import com.yunbao.video.activity.VideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.event.VideoDeleteEvent;
|
import com.yunbao.video.event.VideoDeleteEvent;
|
||||||
import com.yunbao.video.event.VideoScrollPageEvent;
|
import com.yunbao.video.event.VideoScrollPageEvent;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
|
@ -9,10 +9,7 @@ import android.media.MediaMetadataRetriever;
|
|||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.yunbao.common.CommonAppConfig;
|
import com.yunbao.common.CommonAppConfig;
|
||||||
import com.yunbao.common.HtmlConfig;
|
|
||||||
import com.yunbao.common.bean.ConfigBean;
|
import com.yunbao.common.bean.ConfigBean;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.common.interfaces.CommonCallback;
|
import com.yunbao.common.interfaces.CommonCallback;
|
||||||
@ -23,9 +20,8 @@ import com.yunbao.common.utils.StringUtil;
|
|||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.event.VideoDeleteEvent;
|
import com.yunbao.video.event.VideoDeleteEvent;
|
||||||
import com.yunbao.video.event.VideoShareEvent;
|
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
import com.yunbao.video.utils.VideoLocalUtil;
|
import com.yunbao.video.utils.VideoLocalUtil;
|
||||||
|
@ -26,7 +26,7 @@ import com.yunbao.common.utils.StringUtil;
|
|||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.common.utils.WordUtil;
|
import com.yunbao.common.utils.WordUtil;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.utils.VideoLocalUtil;
|
import com.yunbao.video.utils.VideoLocalUtil;
|
||||||
import com.yunbao.video.views.VideoEditCutViewHolder;
|
import com.yunbao.video.views.VideoEditCutViewHolder;
|
||||||
import com.yunbao.video.views.VideoEditFilterViewHolder;
|
import com.yunbao.video.views.VideoEditFilterViewHolder;
|
||||||
|
@ -14,7 +14,7 @@ import com.yunbao.common.Constants;
|
|||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.utils.SpUtil;
|
import com.yunbao.common.utils.SpUtil;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.utils.LottieComponent;
|
import com.yunbao.video.utils.LottieComponent;
|
||||||
import com.yunbao.video.utils.VideoStorge;
|
import com.yunbao.video.utils.VideoStorge;
|
||||||
import com.yunbao.video.views.VideoScrollViewHolder;
|
import com.yunbao.video.views.VideoScrollViewHolder;
|
||||||
|
@ -16,7 +16,7 @@ import com.alibaba.fastjson.JSON;
|
|||||||
import com.yunbao.common.Constants;
|
import com.yunbao.common.Constants;
|
||||||
import com.yunbao.common.adapter.RefreshAdapter;
|
import com.yunbao.common.adapter.RefreshAdapter;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.common.glide.ImgLoader;
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
|
@ -18,7 +18,7 @@ import com.yunbao.common.utils.ClickUtil;
|
|||||||
import com.yunbao.common.utils.ToastUtil;
|
import com.yunbao.common.utils.ToastUtil;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.utils.VideoIconUtil;
|
import com.yunbao.video.utils.VideoIconUtil;
|
||||||
import com.yunbao.video.views.VideoPlayWrapViewHolder;
|
import com.yunbao.video.views.VideoPlayWrapViewHolder;
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ import com.yunbao.common.custom.CommonRefreshView;
|
|||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
||||||
|
@ -12,7 +12,7 @@ import com.yunbao.common.Constants;
|
|||||||
import com.yunbao.common.bean.ConfigBean;
|
import com.yunbao.common.bean.ConfigBean;
|
||||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/10/19.
|
* Created by cxf on 2018/10/19.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.yunbao.video.interfaces;
|
package com.yunbao.video.interfaces;
|
||||||
|
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cxf on 2018/12/7.
|
* Created by cxf on 2018/12/7.
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package com.yunbao.video.utils;
|
package com.yunbao.video.utils;
|
||||||
|
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.interfaces.VideoScrollDataHelper;
|
import com.yunbao.video.interfaces.VideoScrollDataHelper;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
@ -8,7 +8,7 @@ import android.widget.TextView;
|
|||||||
import com.yunbao.common.utils.StringUtil;
|
import com.yunbao.common.utils.StringUtil;
|
||||||
import com.yunbao.common.views.AbsViewHolder;
|
import com.yunbao.common.views.AbsViewHolder;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.custom.RangeSlider;
|
import com.yunbao.video.custom.RangeSlider;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,7 +9,7 @@ import com.yunbao.common.custom.CommonRefreshView;
|
|||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import com.yunbao.common.custom.CommonRefreshView;
|
|||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ import com.yunbao.common.custom.CommonRefreshView;
|
|||||||
import com.yunbao.common.http.HttpCallback;
|
import com.yunbao.common.http.HttpCallback;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
import com.yunbao.video.interfaces.VideoMusicActionListener;
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ import com.yunbao.common.views.AbsViewHolder;
|
|||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.adapter.MusicAdapter;
|
import com.yunbao.video.adapter.MusicAdapter;
|
||||||
import com.yunbao.video.adapter.MusicClassAdapter;
|
import com.yunbao.video.adapter.MusicClassAdapter;
|
||||||
import com.yunbao.video.bean.MusicBean;
|
import com.yunbao.common.bean.MusicBean;
|
||||||
import com.yunbao.video.bean.MusicClassBean;
|
import com.yunbao.video.bean.MusicClassBean;
|
||||||
import com.yunbao.video.dialog.VideoMusicClassDialog;
|
import com.yunbao.video.dialog.VideoMusicClassDialog;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
|
@ -18,7 +18,7 @@ import com.tencent.rtmp.ui.TXCloudVideoView;
|
|||||||
import com.yunbao.common.utils.L;
|
import com.yunbao.common.utils.L;
|
||||||
import com.yunbao.common.views.AbsViewHolder;
|
import com.yunbao.common.views.AbsViewHolder;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.http.VideoHttpConsts;
|
import com.yunbao.video.http.VideoHttpConsts;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ import com.yunbao.common.views.AbsViewHolder;
|
|||||||
import com.yunbao.live.activity.LiveReportActivity;
|
import com.yunbao.live.activity.LiveReportActivity;
|
||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.dialog.VideoShareDialogFragment;
|
import com.yunbao.video.dialog.VideoShareDialogFragment;
|
||||||
import com.yunbao.video.event.VideoLikeEvent;
|
import com.yunbao.video.event.VideoLikeEvent;
|
||||||
import com.yunbao.video.http.VideoHttpUtil;
|
import com.yunbao.video.http.VideoHttpUtil;
|
||||||
|
@ -12,7 +12,7 @@ import com.yunbao.common.views.AbsViewHolder;
|
|||||||
import com.yunbao.video.R;
|
import com.yunbao.video.R;
|
||||||
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
import com.yunbao.video.activity.AbsVideoPlayActivity;
|
||||||
import com.yunbao.video.adapter.VideoScrollAdapter;
|
import com.yunbao.video.adapter.VideoScrollAdapter;
|
||||||
import com.yunbao.video.bean.VideoBean;
|
import com.yunbao.common.bean.VideoBean;
|
||||||
import com.yunbao.video.custom.VideoLoadingBar;
|
import com.yunbao.video.custom.VideoLoadingBar;
|
||||||
import com.yunbao.video.event.VideoCommentEvent;
|
import com.yunbao.video.event.VideoCommentEvent;
|
||||||
import com.yunbao.video.event.VideoLikeEvent;
|
import com.yunbao.video.event.VideoLikeEvent;
|
||||||
|
Loading…
Reference in New Issue
Block a user