| | |
| | | import androidx.annotation.RequiresApi |
| | | import cn.jpush.android.api.JPushInterface |
| | | import cn.jpush.android.api.TagAliasCallback |
| | | import cn.rongcloud.rtc.api.RCRTCConfig |
| | | import cn.rongcloud.rtc.api.RCRTCEngine |
| | | import cn.rongcloud.rtc.api.RCRTCRoom |
| | | import cn.rongcloud.rtc.api.callback.IRCRTCResultCallback |
| | | import cn.rongcloud.rtc.api.callback.IRCRTCResultDataCallback |
| | | import cn.rongcloud.rtc.api.stream.RCRTCInputStream |
| | | import cn.rongcloud.rtc.base.RTCErrorCode |
| | | import cn.sinata.rxnetty.NettyClient |
| | | import cn.sinata.xldutils.BaseApplication |
| | | import cn.sinata.xldutils.utils.sysErr |
| | |
| | | import com.umeng.commonsdk.UMConfigure |
| | | import com.umeng.socialize.PlatformConfig |
| | | import com.xuexiang.xui.XUI |
| | | import io.rong.imlib.RongIMClient |
| | | import org.greenrobot.eventbus.EventBus |
| | | import org.jetbrains.anko.toast |
| | | import org.json.JSONObject |
| | |
| | | registerActivityLifecycleCallbacks(this) |
| | | initUpPoint() |
| | | initSocket() |
| | | initRong() |
| | | } |
| | | |
| | | fun initPersionDate(){ |
| | |
| | | UMConfigure.DEVICE_TYPE_PHONE, |
| | | "" |
| | | ) |
| | | PlatformConfig.setWeixin("wxfba0dbf7c79c8593", "99ffb558cc6af57fd60703fb36e28829") |
| | | PlatformConfig.setWeixin("wx60fea9cd239b6c3a", "47dda1fb8f7fac69700f6591565d7fd1") |
| | | PlatformConfig.setQQZone("1105920536", "bx7zWrVgTskXHZTr") //qq互联 |
| | | JPushInterface.setDebugMode(true) |
| | | JPushInterface.init(this) |
| | | setAlisa() |
| | | LogUtils.OpenLog(true) |
| | | // CrashReport.initCrashReport(getApplicationContext(), "444bb776ed", false); |
| | | } |
| | | |
| | | private fun initRong() { |
| | | // IMLib 初始化 |
| | | RongIMClient.init(this, "0vnjpoad01rwz") |
| | | // RTCLib 初始化 |
| | | val config = RCRTCConfig.Builder.create() |
| | | RCRTCEngine.getInstance().init(this, config.build()) |
| | | } |
| | | |
| | | public fun setAlisa() { |
| | |
| | | val act = activities[activities.size - 1] |
| | | // MyApplication.getTTsManager().setVideoText("收到新的订单") |
| | | when (orderSimpleData.orderType) { |
| | | 1,2 -> { |
| | | 1,2,10 -> { |
| | | (act as MyBaseActivity).showOrder( |
| | | orderSimpleData.orderId.toString(), |
| | | orderSimpleData.orderType.toString(), |
| | |
| | | var aMapLocation: AMapLocation? = null |
| | | var currentOrderId: String = "" |
| | | var currentOrderType: String = "" |
| | | var recordRoomId: String = "" |
| | | var orderStatueViews: MutableList<OrderStatueView> = |
| | | mutableListOf() |
| | | var testHeartNunm = 0 |
| | |
| | | fun removeOrderView(view: OrderStatueView?) { |
| | | orderStatueViews.remove(view) |
| | | } |
| | | |
| | | |
| | | fun startRecord(){ |
| | | if (recordRoomId.isNotEmpty()){ |
| | | RCRTCEngine.getInstance() |
| | | .joinRoom(recordRoomId, object : IRCRTCResultDataCallback<RCRTCRoom?>() { |
| | | override fun onSuccess(rcrtcRoom: RCRTCRoom?) { |
| | | Log.e("RongLog", "开始录制======》当前房间号:${recordRoomId}") |
| | | // rcrtcRoom?.registerRoomListener(object :IRCRTCRoomEventsListener(){}) |
| | | //step1:推流 |
| | | rcrtcRoom?.localUser?.publishDefaultStreams(object : |
| | | IRCRTCResultCallback() { |
| | | override fun onSuccess() { |
| | | Log.e("RongLog", "发布资源成功") |
| | | } |
| | | |
| | | override fun onFailed(errorCode: RTCErrorCode) { |
| | | Log.e("RongLog", "发布资源失败:${errorCode.reason}") |
| | | } |
| | | }) |
| | | |
| | | //step2:订阅远端 |
| | | val inputStreams: MutableList<RCRTCInputStream> = ArrayList() |
| | | for (remoteUser in rcrtcRoom?.remoteUsers ?: arrayListOf()) { |
| | | if (remoteUser.streams.size == 0) { |
| | | continue |
| | | } |
| | | inputStreams.addAll(remoteUser.streams) |
| | | } |
| | | |
| | | if (inputStreams.size == 0) { |
| | | return |
| | | } |
| | | rcrtcRoom?.localUser?.subscribeStreams( |
| | | inputStreams, |
| | | object : IRCRTCResultCallback() { |
| | | override fun onFailed(errorCode: RTCErrorCode?) { |
| | | Log.e("RongLog", "订阅资源失败:${errorCode}") |
| | | } |
| | | |
| | | override fun onSuccess() { |
| | | Log.e("RongLog", "订阅资源成功") |
| | | } |
| | | }) |
| | | } |
| | | |
| | | override fun onFailed(rtcErrorCode: RTCErrorCode) { |
| | | Log.e("RongLog", "录制失败======》${rtcErrorCode}") |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | |
| | | fun finishRecord(){ |
| | | RCRTCEngine.getInstance().leaveRoom(object : IRCRTCResultCallback() { |
| | | override fun onFailed(errorCode: RTCErrorCode?) { |
| | | Log.e("RongLog", "结束录制失败") |
| | | } |
| | | |
| | | override fun onSuccess() { |
| | | Log.e("RongLog", "结束录制成功") |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | |
| | | private val activities = ArrayList<Activity?>() |