package com.weikou.beibeivideo.util.browser;
|
|
import android.app.Activity;
|
import android.content.Context;
|
import android.content.Intent;
|
import android.util.Log;
|
import android.webkit.JavascriptInterface;
|
import android.widget.Toast;
|
|
import com.alibaba.baichuan.android.trade.model.AlibcShowParams;
|
import com.alibaba.baichuan.android.trade.model.OpenType;
|
import com.alibaba.fastjson.JSON;
|
import com.google.gson.Gson;
|
import com.lcjian.library.util.SystemCommon;
|
import com.lcjian.library.util.common.ClipboardUtil;
|
import com.lcjian.library.util.common.PackageUtils2;
|
import com.lcjian.library.util.common.StringUtils;
|
import com.lcjian.library.util.security.DEScrypt;
|
import com.lcjian.library.util.security.MD5Utils;
|
import com.umeng.analytics.MobclickAgent;
|
import com.weikou.beibeivideo.BasicTextHttpResponseHandler;
|
import com.weikou.beibeivideo.BeibeiVideoAPI;
|
import com.weikou.beibeivideo.entity.UserInfo;
|
import com.weikou.beibeivideo.entity.vo.UserInfoVO;
|
import com.weikou.beibeivideo.ui.login.LoginActivity;
|
import com.weikou.beibeivideo.ui.mine.BrowserActivity;
|
import com.weikou.beibeivideo.util.JumpActivityUtil;
|
import com.weikou.beibeivideo.util.UserUtil;
|
|
import org.apache.http.Header;
|
import org.json.JSONException;
|
import org.json.JSONObject;
|
|
import java.net.URLEncoder;
|
import java.util.Iterator;
|
import java.util.LinkedHashMap;
|
import java.util.Map;
|
|
import static android.content.Context.MODE_PRIVATE;
|
|
public class PPJavaInterface {
|
private static final String TAG = "PPJavaInterface";
|
private Context mContext;
|
private IEventListener eventListener;
|
|
public PPJavaInterface(Context context, IEventListener eventListener) {
|
mContext = context;
|
this.eventListener = eventListener;
|
}
|
|
|
/**
|
* 跳转登录页
|
*/
|
@JavascriptInterface
|
public void login() {
|
eventListener.onLogin();
|
}
|
|
|
/**
|
* 返回用户信息(JSON格式)。
|
* code为0标识用户未登录,data的值为空;
|
* code为1表示用户已经登录,data为用户信息
|
* 如: {"code":1,"data":{"code":"123","nickname":"昵称","isSVip":false,"isCoupon":false}}
|
*
|
* @return
|
*/
|
@JavascriptInterface
|
public String getUserInfo() {
|
try {
|
JSONObject root = new JSONObject();
|
UserInfoVO user = UserUtil.getLoginUserInfoDetail(mContext);
|
if (user == null) {
|
root.put("code", 0);
|
UserUtil.updateUserInfo(mContext != null ? mContext.getApplicationContext() : mContext, null);
|
} else {
|
root.put("code", 1);
|
JSONObject data = new JSONObject();
|
data.put("code", user.getPptvCode());
|
data.put("nickname", user.getNickName());
|
data.put("isSVip", UserUtil.isVIP(mContext));
|
data.put("isCoupon", false);
|
root.put("data", data);
|
}
|
return root.toString();
|
} catch (Exception e) {
|
|
}
|
return null;
|
}
|
|
|
/**
|
* 试看结束
|
*/
|
@JavascriptInterface
|
public void tryPlayFinish() {
|
eventListener.onTryPlayFinish();
|
}
|
|
/**
|
* 视频播放完成
|
*/
|
@JavascriptInterface
|
public void playFinish() {
|
eventListener.onPlayFinish();
|
}
|
|
/**
|
* 视频信息回调
|
*
|
* @param name 视频名称
|
* @param cid
|
* @param vid
|
*/
|
@JavascriptInterface
|
public void videoInfo(String name, String cid, String vid) {
|
|
}
|
|
@JavascriptInterface
|
public void stopPlay(String cid, String vid, int currentTime) {
|
|
BeibeiVideoAPI.pptvFinishPlay(mContext, cid, vid, currentTime, new BasicTextHttpResponseHandler() {
|
@Override
|
public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception {
|
|
}
|
});
|
}
|
|
|
public interface IEventListener {
|
public void onLogin();
|
|
public void onTryPlayFinish();
|
|
public void onPlayFinish();
|
|
|
}
|
|
}
|