修改名称。
This commit is contained in:
@@ -0,0 +1,349 @@
|
||||
package com.xscm.moduleutil.activity;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.provider.Settings;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.view.inputmethod.InputMethodManager;
|
||||
import android.widget.EditText;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.databinding.ViewDataBinding;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.blankj.utilcode.util.ActivityUtils;
|
||||
import com.blankj.utilcode.util.BarUtils;
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.xscm.moduleutil.R;
|
||||
import com.xscm.moduleutil.utils.BackgroundManager;
|
||||
import com.xscm.moduleutil.utils.ColorManager;
|
||||
import com.xscm.moduleutil.utils.DisplayUtil;
|
||||
import com.xscm.moduleutil.widget.QXGiftDriftView;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
|
||||
public abstract class BaseAppCompatActivity<VDB extends ViewDataBinding> extends AppCompatActivity
|
||||
implements BackgroundManager.BackgroundUpdateListener, ColorManager.ColorChangeListener {
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context newBase) {
|
||||
// 设置字体缩放比例为1.0f,即不跟随系统字体大小变化
|
||||
super.attachBaseContext(DisplayUtil.attachBaseContext(newBase, 1.0f));
|
||||
}
|
||||
|
||||
protected VDB mBinding;
|
||||
|
||||
@Subscribe (threadMode = ThreadMode.MAIN)
|
||||
public void onEvent(Object event) {
|
||||
}
|
||||
|
||||
// private LoadingDialog mLoadingDialog;
|
||||
// 添加广播接收器成员变量
|
||||
private BroadcastReceiver mLogoutReceiver = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
if ("com.xscm.moduleutil.ACTION_USER_LOGOUT".equals(intent.getAction())) {
|
||||
// 在这里处理用户登出后的UI更新
|
||||
// 例如:隐藏需要登录才能显示的控件
|
||||
// 或者跳转到登录状态的页面
|
||||
handleUserLogout();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// 处理用户登出的方法
|
||||
protected void handleUserLogout() {
|
||||
// 子类可以重写此方法处理具体的登出逻辑
|
||||
// 例如:更新UI状态、清除本地数据等
|
||||
|
||||
ActivityUtils.finishAllActivities();
|
||||
}
|
||||
|
||||
QXGiftDriftView qxGiftDriftView;
|
||||
protected void doDone(){}
|
||||
@SuppressLint("UnspecifiedRegisterReceiverFlag")
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
getWindow().getDecorView().setBackgroundResource(R.mipmap.log_bj);
|
||||
setContentView(getLayoutId());
|
||||
doDone();
|
||||
// 隐藏标题栏
|
||||
if (getSupportActionBar() != null) {
|
||||
getSupportActionBar().hide();
|
||||
}
|
||||
mBinding = DataBindingUtil.setContentView(this, getLayoutId());
|
||||
mBinding.setLifecycleOwner(this);
|
||||
ARouter.getInstance().inject(this);
|
||||
BarUtils.setStatusBarLightMode(this, isLightMode());
|
||||
BarUtils.transparentStatusBar(this);
|
||||
initView();
|
||||
initData();
|
||||
initCompleted();
|
||||
|
||||
// 注册背景更新监听器
|
||||
BackgroundManager.getInstance().addListener(this);
|
||||
// 尝试加载网络背景
|
||||
loadNetworkBackground();
|
||||
// 注册颜色变化监听器
|
||||
ColorManager.getInstance().addColorChangeListener(this);
|
||||
|
||||
// 注册登出广播接收器
|
||||
IntentFilter filter = new IntentFilter("com.xscm.moduleutil.ACTION_USER_LOGOUT");
|
||||
registerReceiver(mLogoutReceiver, filter);
|
||||
|
||||
EventBus.getDefault().register(this);
|
||||
}
|
||||
|
||||
// 在Activity中
|
||||
private static final int REQUEST_OVERLAY_PERMISSION = 1001;
|
||||
|
||||
private void checkAndRequestOverlayPermission() {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
if (!Settings.canDrawOverlays(this)) {
|
||||
new AlertDialog.Builder(this)
|
||||
.setTitle("需要悬浮窗权限")
|
||||
.setMessage("应用需要悬浮窗权限才能显示飘屏效果")
|
||||
.setPositiveButton("去设置", (dialog, which) -> {
|
||||
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
|
||||
Uri.parse("package:" + getPackageName()));
|
||||
startActivityForResult(intent, REQUEST_OVERLAY_PERMISSION);
|
||||
})
|
||||
.setNegativeButton("取消", null)
|
||||
.show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
if (requestCode == REQUEST_OVERLAY_PERMISSION) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
if (Settings.canDrawOverlays(this)) {
|
||||
ToastUtils.show("已获得悬浮窗权限");
|
||||
} else {
|
||||
ToastUtils.show("未获得悬浮窗权限");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onColorChanged() {
|
||||
// 在主线程中更新UI
|
||||
runOnUiThread(this::updateUIColors);
|
||||
}
|
||||
|
||||
// 子类可以重写此方法来更新UI颜色
|
||||
protected void updateUIColors() {
|
||||
// 默认实现,子类可以覆盖
|
||||
}
|
||||
|
||||
//在类中添加以下成员变量
|
||||
private Handler timerHandler = new Handler();
|
||||
private Runnable timerRunnable = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
// 调用你要执行的方法
|
||||
// executePeriodicTask();
|
||||
|
||||
// 每10秒执行一次
|
||||
timerHandler.postDelayed(this, 10000);
|
||||
}
|
||||
};
|
||||
|
||||
// 启动定时器的方法
|
||||
private void startTimer() {
|
||||
timerHandler.postDelayed(timerRunnable, 10000);
|
||||
}
|
||||
|
||||
protected void loadNetworkBackground() {
|
||||
// 只有当已经有背景URL时才加载
|
||||
String backgroundUrl = BackgroundManager.getInstance().getBackgroundUrl();
|
||||
if (backgroundUrl != null && !backgroundUrl.isEmpty()) {
|
||||
// 检查是否有已加载的drawable
|
||||
Drawable cachedDrawable = BackgroundManager.getInstance().getBackgroundDrawable();
|
||||
if (cachedDrawable != null) {
|
||||
getWindow().getDecorView().setBackground(cachedDrawable);
|
||||
} else {
|
||||
// 加载网络背景
|
||||
BackgroundManager.getInstance().loadBackgroundDrawable(this, new BackgroundManager.BackgroundLoadCallback() {
|
||||
@Override
|
||||
public void onLoadSuccess(Drawable drawable) {
|
||||
getWindow().getDecorView().setBackground(drawable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoadFailed() {
|
||||
// 加载失败时使用默认背景
|
||||
getWindow().getDecorView().setBackgroundResource(R.mipmap.activity_bj);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackgroundUpdated(Drawable drawable) {
|
||||
// 当背景更新时,更新当前Activity的背景
|
||||
if (drawable != null) {
|
||||
getWindow().getDecorView().setBackground(drawable);
|
||||
}
|
||||
}
|
||||
|
||||
// 提供一个方法供子类调用,用于设置背景URL
|
||||
protected void setNetworkBackgroundUrl(String url) {
|
||||
BackgroundManager.getInstance().setBackgroundUrl(url);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Resources getResources() {//禁止app字体大小跟随系统字体大小调节
|
||||
Resources resources = super.getResources();
|
||||
if (resources != null && resources.getConfiguration().fontScale != 1.0f) {
|
||||
android.content.res.Configuration configuration = resources.getConfiguration();
|
||||
configuration.fontScale = 1.0f;
|
||||
resources.updateConfiguration(configuration, resources.getDisplayMetrics());
|
||||
}
|
||||
return resources;
|
||||
}
|
||||
|
||||
static float fontScale = 1f;
|
||||
|
||||
// @Override
|
||||
// public Resources getResources() {
|
||||
// Resources resources = super.getResources();
|
||||
// return DisplayUtil.getResources(this,resources,fontScale);
|
||||
// }
|
||||
|
||||
public void setFontScale(float fontScale) {
|
||||
this.fontScale = fontScale;
|
||||
DisplayUtil.recreate(this);
|
||||
}
|
||||
|
||||
public boolean isLightMode() {
|
||||
return true;
|
||||
}
|
||||
|
||||
protected abstract void initData();
|
||||
|
||||
protected abstract void initView();
|
||||
|
||||
protected void initCompleted() {
|
||||
}
|
||||
|
||||
protected abstract int getLayoutId();
|
||||
|
||||
|
||||
@Override
|
||||
public void finish() {
|
||||
EventBus.getDefault().unregister(this);
|
||||
super.finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
// 移除背景更新监听器
|
||||
BackgroundManager.getInstance().removeListener(this);
|
||||
// 移除颜色变化监听器
|
||||
ColorManager.getInstance().removeColorChangeListener(this);
|
||||
if (mBinding != null) {
|
||||
mBinding.unbind();
|
||||
}
|
||||
try {
|
||||
unregisterReceiver(mLogoutReceiver);
|
||||
} catch (Exception e) {
|
||||
// 忽略异常
|
||||
}
|
||||
|
||||
try {
|
||||
unregisterReceiver(mLogoutReceiver);
|
||||
} catch (Exception e) {
|
||||
// 忽略异常
|
||||
}
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
public void showLoading(String content) {
|
||||
// if (mLoadingDialog == null) {
|
||||
// mLoadingDialog = new LoadingDialog(this);
|
||||
// }
|
||||
// if (!mLoadingDialog.isShowing()) {
|
||||
// mLoadingDialog.show();
|
||||
// }
|
||||
}
|
||||
|
||||
public void showLoading() {
|
||||
// if (mLoadingDialog == null) {
|
||||
// mLoadingDialog = new LoadingDialog(this);
|
||||
// }
|
||||
// if (!mLoadingDialog.isShowing()) {
|
||||
// mLoadingDialog.show();
|
||||
// }
|
||||
}
|
||||
|
||||
public void disLoading() {
|
||||
// if (mLoadingDialog != null && mLoadingDialog.isShowing()) {
|
||||
// mLoadingDialog.dismiss();
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean dispatchTouchEvent(MotionEvent ev) {
|
||||
if (ev.getAction() == MotionEvent.ACTION_DOWN) {
|
||||
View view = getCurrentFocus();
|
||||
if (isShouldHideInput(view, ev)) {
|
||||
InputMethodManager Object = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||
if (Object != null) {
|
||||
Object.hideSoftInputFromWindow(view.getWindowToken(), 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
try {
|
||||
return super.dispatchTouchEvent(ev);
|
||||
} catch (Exception e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//判断是否隐藏键盘
|
||||
public boolean isShouldHideInput(View v, MotionEvent event) {
|
||||
if (v != null && (v instanceof EditText)) {
|
||||
int[] leftTop = {0, 0};
|
||||
//获取输入框当前的location位置
|
||||
v.getLocationInWindow(leftTop);
|
||||
int left = leftTop[0];
|
||||
int top = leftTop[1];
|
||||
int bottom = top + v.getHeight();
|
||||
int right = left + v.getWidth();
|
||||
if (event.getX() > left && event.getX() < right
|
||||
&& event.getY() > top && event.getY() < bottom) {
|
||||
// 点击的是输入框区域,保留点击EditText的事件
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package com.xscm.moduleutil.activity;
|
||||
|
||||
public interface IPresenter {
|
||||
void detachView();
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.xscm.moduleutil.activity;
|
||||
|
||||
public interface IView<T> {
|
||||
T getSelfActivity();
|
||||
|
||||
void showLoadings();
|
||||
|
||||
void showLoadings(String content);
|
||||
|
||||
void disLoadings();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,395 @@
|
||||
package com.xscm.moduleutil.activity;
|
||||
|
||||
import android.webkit.JavascriptInterface;
|
||||
|
||||
import com.blankj.utilcode.util.ActivityUtils;
|
||||
import com.xscm.moduleutil.utils.logger.Logger;
|
||||
|
||||
import org.json.JSONObject;
|
||||
|
||||
/**
|
||||
* 项目名称 qipao-android
|
||||
* 包名:com.yutang.xqipao.ui.h5
|
||||
* 创建人 王欧
|
||||
* 创建时间 2020/6/16 1:26 PM
|
||||
* 描述 describe
|
||||
*/
|
||||
public class WebViewBridgeConfig {
|
||||
public static final String NAME = "bridge";
|
||||
public static final String TYPE_QQ_SERVICE = "qqService";
|
||||
public static final String TYPE_FEEDBACK = "feedback";
|
||||
public static final String TYPE_USER_ZONE = "userZone";
|
||||
public static final String TYPE_RECHARGE = "recharge";
|
||||
public static final String TYPE_BACK = "onBackPressed";
|
||||
|
||||
public static final String TYPE_GAME_RANK = "gameRank";//游戏排行榜
|
||||
public static final String TYPE_GAME_SOUND = "gameSound";//游戏声音
|
||||
public static final String TYPE_GAME_END = "gameEnd";//游戏结束
|
||||
public static final String TYPE_GAME_PAUSE = "gamePause";//游戏暂停
|
||||
public static final String TYPE_GAME_BEGIN = "gameBegin";//游戏开始
|
||||
public static final String TYPE_GAME_NEXT = "gameNext";//游戏下一关
|
||||
|
||||
private static int gameCount = 0;//游戏次数
|
||||
private String NextGame = "";//上次游戏名称
|
||||
private String title = "";//标题
|
||||
public static final String GAME_EL = "俄罗斯方块";//俄罗斯方块
|
||||
public static final String GAME_XM = "消灭星星";//消灭星星
|
||||
public static final String GAME_SB = "神步伐";//神步伐
|
||||
public static final String GAME_XT = "线条冲刺";//线条冲刺
|
||||
public static final String GAME_FK = "疯狂赛车";//疯狂赛车
|
||||
|
||||
public WebViewBridgeConfig(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void postMessage(String json) {
|
||||
Logger.e(json);
|
||||
try {
|
||||
JSONObject jsonObject = new JSONObject(json);
|
||||
String type = jsonObject.getString("type");
|
||||
JSONObject object = jsonObject.getJSONObject("data");
|
||||
switch (type) {
|
||||
case TYPE_QQ_SERVICE:
|
||||
serviceUser();
|
||||
break;
|
||||
case TYPE_FEEDBACK:
|
||||
// ActivityUtils.startActivity(FeedBackActivity.class);
|
||||
break;
|
||||
case TYPE_USER_ZONE:
|
||||
// ARouter.getInstance().build(ARouteConstants.NEW_HOME_PAGE).withString("userId", object.getString("userId")).navigation();
|
||||
break;
|
||||
case TYPE_RECHARGE:
|
||||
// ARouter.getInstance().build(ARouters.ME_BALANCE).navigation();
|
||||
break;
|
||||
case TYPE_BACK:
|
||||
try {
|
||||
ActivityUtils.getTopActivity().onBackPressed();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
//跳转QQ客服
|
||||
private void serviceUser() {
|
||||
// RemoteDataSource.getInstance().serviceUser(new BaseObserver<String>() {
|
||||
// @Override
|
||||
// public void onSubscribe(Disposable d) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onNext(String uin) {
|
||||
// try {
|
||||
// String qqUrl = "mqqwpa://im/chat?chat_type=wpa&uin=" + uin + "&version=1";
|
||||
// ActivityUtils.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(qqUrl)));
|
||||
// } catch (Exception e) {
|
||||
// ToastUtils.showShort("请先安装QQ");
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onComplete() {
|
||||
//
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* H5小游戏语音互动调用
|
||||
*
|
||||
* @param json
|
||||
*/
|
||||
@JavascriptInterface
|
||||
public void common(String json) {
|
||||
// ThreadUtils.runOnUiThread(new Runnable() {
|
||||
// @Override
|
||||
// public void run() {
|
||||
// Logger.e(json);
|
||||
// try {
|
||||
// JSONObject jsonObject = new JSONObject(json);
|
||||
// String type = jsonObject.getString("type");
|
||||
// JSONObject object = jsonObject.getJSONObject("params");
|
||||
// switch (type) {
|
||||
// case JOIN_LIVE_ROOM:
|
||||
// quitLiveRoom();
|
||||
// RtcManager.getInstance().setGame(true);
|
||||
// RtcManager.getInstance().leaveChannel();
|
||||
// //游戏时关闭房间
|
||||
// ActivityUtils.finishActivity(RoomActivity.class);
|
||||
// BaseApplication.getInstance().isPlaying = false;
|
||||
// BaseApplication.getInstance().isShow = false;
|
||||
// UserBean userBean = BaseApplication.getInstance().getUser();
|
||||
// RtcManager.getInstance().loginRoomGame(object.getString("roomId"), userBean.getUser_id(), userBean.getNickname(), "");
|
||||
// break;
|
||||
// case LEAVE_LIVE_ROOM:
|
||||
// RtcManager.getInstance().leaveChannel(object.getString("roomId"));
|
||||
// RtcManager.getInstance().setAudioUrl(null);
|
||||
// break;
|
||||
// case ROOM_START_PUBLISH_STREAM:
|
||||
// RtcManager.getInstance().applyWheat(String.format("%s_%s", object.getString("roomId"), object.getString("userId")));
|
||||
// break;
|
||||
// case ROOM_STOP_PUBLISH_STREAM:
|
||||
// RtcManager.getInstance().downWheat();
|
||||
// break;
|
||||
// case ROOM_MUTE_LOCAL:
|
||||
// RtcManager.getInstance().muteLocalAudioStream(object.getBoolean("mute"));
|
||||
// break;
|
||||
// case ROOM_MUTE_MICROPHONE:
|
||||
// RtcManager.getInstance().muteSpeaker(object.getBoolean("mute"));
|
||||
// break;
|
||||
// case ROOM_SHOW_MESSAGE_DIALOG:
|
||||
// DialogUtils.showDialogFragment(ARouter.getInstance().build(ARouteConstants.ROOM_MSG_DIALOG).navigation());
|
||||
// break;
|
||||
// case ON_CLOSE_BTN_CLICK:
|
||||
// RtcManager.getInstance().leaveChannel();
|
||||
// ActivityUtils.finishActivity(H5Activity.class);
|
||||
// break;
|
||||
// case TYPE_QQ_SERVICE:
|
||||
// serviceUser();
|
||||
// break;
|
||||
// case TYPE_FEEDBACK:
|
||||
// ActivityUtils.startActivity(FeedBackActivity.class);
|
||||
// break;
|
||||
// case TYPE_USER_ZONE:
|
||||
// ARouter.getInstance().build(ARouteConstants.NEW_HOME_PAGE).withString("userId", object.getString("userId")).navigation();
|
||||
// break;
|
||||
// case TYPE_RECHARGE:
|
||||
// ARouter.getInstance().build(ARouters.ME_BALANCE).navigation();
|
||||
// break;
|
||||
// case TYPE_BACK:
|
||||
// try {
|
||||
// ActivityUtils.getTopActivity().onBackPressed();
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
// break;
|
||||
// //游戏排行榜
|
||||
// case TYPE_GAME_RANK:
|
||||
// switch (title) {
|
||||
// case GAME_EL:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050303);
|
||||
// break;
|
||||
// case GAME_SB:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050403);
|
||||
// break;
|
||||
// case GAME_XM:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050503);
|
||||
// break;
|
||||
// case GAME_XT:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050603);
|
||||
// break;
|
||||
// case GAME_FK:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050703);
|
||||
// break;
|
||||
// }
|
||||
// break;
|
||||
// //游戏开始
|
||||
// case TYPE_GAME_BEGIN:
|
||||
// switch (title) {
|
||||
// case GAME_EL:
|
||||
// if (!TextUtils.isEmpty(NextGame) && GAME_EL.equals(NextGame)) {
|
||||
// gameCount++;
|
||||
// }
|
||||
// break;
|
||||
// case GAME_SB:
|
||||
// if (!TextUtils.isEmpty(NextGame) && GAME_SB.equals(NextGame)) {
|
||||
// gameCount++;
|
||||
// }
|
||||
// break;
|
||||
// case GAME_XM:
|
||||
// if (!TextUtils.isEmpty(NextGame) && GAME_XM.equals(NextGame)) {
|
||||
// gameCount++;
|
||||
// }
|
||||
// break;
|
||||
// case GAME_XT:
|
||||
// if (!TextUtils.isEmpty(NextGame) && GAME_XT.equals(NextGame)) {
|
||||
// gameCount++;
|
||||
// }
|
||||
// break;
|
||||
// case GAME_FK:
|
||||
// if (!TextUtils.isEmpty(NextGame) && GAME_FK.equals(NextGame)) {
|
||||
// gameCount++;
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
// if (gameCount == 0) {
|
||||
// gameCount = 1;
|
||||
// }
|
||||
// break;
|
||||
// //游戏结束
|
||||
// case TYPE_GAME_END:
|
||||
// switch (title) {
|
||||
// case GAME_EL:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050301, "game_count", String.valueOf(gameCount));
|
||||
// break;
|
||||
// case GAME_SB:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050401, "game_count", String.valueOf(gameCount));
|
||||
// break;
|
||||
// case GAME_XM:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050501, "game_count", String.valueOf(gameCount));
|
||||
// break;
|
||||
// case GAME_XT:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050601, "game_count", String.valueOf(gameCount));
|
||||
// break;
|
||||
// case GAME_FK:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050701, "game_count", String.valueOf(gameCount));
|
||||
// break;
|
||||
// }
|
||||
// break;
|
||||
// //游戏下一关
|
||||
// case TYPE_GAME_NEXT:
|
||||
// switch (title) {
|
||||
// case GAME_XM:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050504);
|
||||
// break;
|
||||
// case GAME_XT:
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050604);
|
||||
// break;
|
||||
// }
|
||||
// break;
|
||||
// //游戏暂停
|
||||
// case TYPE_GAME_PAUSE:
|
||||
// break;
|
||||
// //游戏声音
|
||||
// case TYPE_GAME_SOUND:
|
||||
// switch (title) {
|
||||
// case GAME_EL:
|
||||
// if (!object.getBoolean("sound")) {
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050302);
|
||||
// }
|
||||
// break;
|
||||
// case GAME_SB:
|
||||
// if (!object.getBoolean("sound")) {
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050402);
|
||||
// }
|
||||
// break;
|
||||
// case GAME_XM:
|
||||
// if (!object.getBoolean("sound")) {
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050502);
|
||||
// }
|
||||
// break;
|
||||
// case GAME_XT:
|
||||
// if (!object.getBoolean("sound")) {
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050602);
|
||||
// }
|
||||
// break;
|
||||
// case GAME_FK:
|
||||
// if (!object.getBoolean("sound")) {
|
||||
// AppLogUtil.reportAppLog(AppLogEvent.A050702);
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
private void quitLiveRoom() {
|
||||
// if (!TextUtils.isEmpty(BaseApplication.getInstance().playId)) {
|
||||
// NewApi.getInstance().quit(BaseApplication.getInstance().playId, new com.qpyy.libcommon.api.BaseObserver<String>(false, false) {
|
||||
// @Override
|
||||
// public void onSubscribe(Disposable d) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onNext(String s) {
|
||||
//
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onComplete() {
|
||||
//
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
// 调用示例:
|
||||
// window.bridge.common('{"type":"joinStreamLiveRoom","params":{"roomId":"12445435","userId":"12323 ","mute":false}}');
|
||||
// 调用顺序:
|
||||
// 1、加入直播间 joinStreamLiveRoom
|
||||
// 2、开始推流 startPublishingStreamLiveRoom
|
||||
// 3、打开麦克风 muteMicrophoneLiveRoom
|
||||
|
||||
/*
|
||||
加入直播间 joinStreamLiveRoom
|
||||
params :
|
||||
{
|
||||
"roomId":"房间id",
|
||||
}
|
||||
*/
|
||||
public static final String JOIN_LIVE_ROOM = "joinStreamLiveRoom";
|
||||
|
||||
/*
|
||||
离开流房间 推拉流 leaveStreamLiveRoom
|
||||
params :
|
||||
{
|
||||
"roomId":"房间id",
|
||||
}
|
||||
*/
|
||||
public static final String LEAVE_LIVE_ROOM = "leaveStreamLiveRoom";
|
||||
|
||||
/*
|
||||
开始推流 startPublishingStreamLiveRoom
|
||||
params :
|
||||
{
|
||||
"roomId":"房间id",
|
||||
"userId":"用户ID"
|
||||
}
|
||||
*/
|
||||
public static final String ROOM_START_PUBLISH_STREAM = "startPublishingStreamLiveRoom";
|
||||
|
||||
/*
|
||||
停止推流 stopPublishingStreamLiveRoom
|
||||
params :
|
||||
{
|
||||
"roomId":"房间id",
|
||||
"userId":"用户ID"
|
||||
}
|
||||
*/
|
||||
public static final String ROOM_STOP_PUBLISH_STREAM = "stopPublishingStreamLiveRoom";
|
||||
|
||||
/*
|
||||
是否屏蔽远端所有声音 muteSpeakerLiveRoom
|
||||
params :
|
||||
{
|
||||
mute:true // true为关闭,false为打开
|
||||
}
|
||||
*/
|
||||
public static final String ROOM_MUTE_LOCAL = "muteSpeakerLiveRoom";
|
||||
|
||||
/*
|
||||
是否静音(关闭)麦克风 muteMicrophoneLiveRoom
|
||||
params :
|
||||
{
|
||||
mute:true // true为关闭,false为打开
|
||||
}
|
||||
*/
|
||||
public static final String ROOM_MUTE_MICROPHONE = "muteMicrophoneLiveRoom";
|
||||
|
||||
|
||||
/*
|
||||
点击消息按钮 onMessageBtnClick
|
||||
params :
|
||||
{
|
||||
}
|
||||
*/
|
||||
public static final String ROOM_SHOW_MESSAGE_DIALOG = "onMessageBtnClick";
|
||||
|
||||
|
||||
//关闭按钮
|
||||
public static final String ON_CLOSE_BTN_CLICK = "onCloseBtnClick";
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user