package com.mogo.cloud; import android.net.wifi.WifiInfo; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.SurfaceView; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import android.widget.ToggleButton; import com.mogo.cloud.live.manager.LiveStreamManagerImpl; import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.cloud.trafficlive.api.ITrafficCarLiveCallBack; import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive; import com.mogo.cloud.wifi.IWifiStateListener; import com.mogo.cloud.wifi.WifiStateManager; public class LivePlayActivity extends AppCompatActivity implements ITrafficCarLiveCallBack, IWifiStateListener { private String TAG = "LiveActivity"; private SurfaceView surfaceView; private ToggleButton liveToggleBtn; private EditText etLookRoomId; private TextView tvWifiState; private String liveSn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_live_play); surfaceView = findViewById(R.id.surfaceView); etLookRoomId = findViewById(R.id.etLookRoomId); liveToggleBtn = findViewById(R.id.liveToggleBtn); tvWifiState = findViewById(R.id.tvWifiState); LiveStreamManagerImpl.getInstance(this.getApplication(), MoGoAiCloudClientConfig.getInstance().getSn()); liveToggleBtn.setOnCheckedChangeListener((buttonView, isChecked) -> { Toast.makeText(getApplicationContext(), buttonView.getText(), Toast.LENGTH_SHORT).show(); if (isChecked) { liveSn = etLookRoomId.getText().toString().trim(); MoGoAiCloudTrafficLive.viewDesignativeVehicleLive(liveSn, surfaceView, this); //just for test // MoGoAiCloudTrafficLive.viewFrontVehicleLive(39.968253, 116.410829, 0, surfaceView, this); } else { MoGoAiCloudTrafficLive.stopCarLive(liveSn); } }); WifiStateManager.getInstance().registerWifiStateListener(this); } @Override protected void onDestroy() { super.onDestroy(); MoGoAiCloudTrafficLive.stopCarLive(liveSn); WifiStateManager.getInstance().unRegisterWifiStateListener(this); } @Override public void onLive(String liveSn) { Log.d(TAG, "开始直播 onLive"); } @Override public void onDisConnect() { Log.d(TAG, "失去连接 onDisConnect"); } @Override public void onError(String errorMsg) { Log.d(TAG, "发生错误 onError msg: " + errorMsg); } @Override public void onWifiState(WifiInfo wifiInfo) { tvWifiState.setText("wifiLevel: " + Math.abs(wifiInfo.getRssi())); } }