From 93bf4836f76be9bc98a745821a939ec5a2c8d238 Mon Sep 17 00:00:00 2001
From: wangshuo <584363327@qq.com>
Date: Fri, 18 Aug 2023 17:02:42 +0800
Subject: [PATCH 1/5] =?UTF-8?q?ctrl=E9=94=AE=E5=8F=AF=E7=A7=BB=E5=8A=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/build.gradle | 1 +
.../cloudapp/ui/CasCloudPhoneActivity.java | 47 ++++++++++++-------
.../res/layout/cas_activity_fullscreen.xml | 17 ++-----
.../main/res/layout/cas_ctrl_button_view.xml | 12 +++++
app/src/main/res/layout/cas_ctrl_view.xml | 40 +++++++++++-----
app/src/main/res/values/strings.xml | 3 +-
.../src/main/cpp/cas_decoder/CasDecoder.cpp | 8 +++-
.../cloudphone/apiimpl/CloudPhoneImpl.java | 2 +
8 files changed, 85 insertions(+), 45 deletions(-)
create mode 100644 app/src/main/res/layout/cas_ctrl_button_view.xml
diff --git a/app/build.gradle b/app/build.gradle
index 0146823..8e3e5c3 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -73,6 +73,7 @@ dependencies {
implementation 'com.github.bumptech.glide:glide:4.13.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.14.0'
implementation 'com.hyman:flowlayout-lib:1.1.2'
+ implementation 'com.github.Petterpx:FloatingX:1.3.1'
implementation 'com.android.support:design:28.0.0'
implementation 'com.github.Justson.AgentWeb:agentweb-core:v5.0.6-androidx'
implementation project(':cloudphone')
diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
index 69c06aa..02a3cfe 100644
--- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
+++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
@@ -37,11 +37,11 @@ import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.FrameLayout;
-import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RelativeLayout;
+import android.widget.Switch;
import android.widget.TextView;
import android.widget.Toast;
@@ -66,6 +66,8 @@ import com.huawei.cloudphone.api.CloudPhoneVirtualDevDataListener;
import com.huawei.cloudphone.api.ICloudPhone;
import com.huawei.cloudphone.virtualdevice.VirtualDeviceSession;
import com.huawei.cloudphone.virtualdevice.common.RingBufferVirtualDeviceIO;
+import com.petterp.floatingx.assist.FxGravity;
+import com.petterp.floatingx.assist.helper.ScopeHelper;
import java.util.HashMap;
@@ -145,8 +147,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
// debug info
private boolean isShowingLagInfoView;
- private TextView lag;
- private Button lagSwitch;
+ private Switch lagSwitch;
private TextView textCtrl;
private RelativeLayout ctrView;
private Button mQuitCloudPhone;
@@ -259,11 +260,8 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
mProgressBar = findViewById(R.id.loading_progress_bar);
mFrameLayout = (FrameLayout) findViewById(R.id.frame_layout);
mFloatContainer = (FrameLayout) findViewById(R.id.floatContainer);
- lag = (TextView) findViewById(R.id.lag);
- lagSwitch = (Button) findViewById(R.id.lag_switch);
+ lagSwitch = (Switch) findViewById(R.id.lag_switch);
lagSwitch.setOnClickListener(CasCloudPhoneActivity.this);
- textCtrl = (TextView) findViewById(R.id.tv_ctrl);
- textCtrl.setOnClickListener(CasCloudPhoneActivity.this);
ctrView = (RelativeLayout) findViewById(R.id.ctr_view);
ctrView.setOnClickListener(CasCloudPhoneActivity.this);
mQuitCloudPhone = (Button) findViewById(R.id.quit_cloud_phone);
@@ -277,6 +275,19 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
qualityRadioViewGroup.check(radioViewMain.getId());
qualityRadioViewGroup.setOnCheckedChangeListener(qualityCheckedChangeListener);
+
+ float dp = getResources().getDisplayMetrics().density;
+ ScopeHelper.builder().setLayout(R.layout.cas_ctrl_button_view).
+ setEnableEdgeAdsorption(true).
+ setEdgeOffset(10f).
+ setEnableScrollOutsideScreen(true).
+ setGravity(FxGravity.LEFT_OR_TOP).
+ setEnableAssistDirection(150 * dp, 0f, 0f, 0f).
+ build().toControl(this).show();
+ textCtrl = (TextView) findViewById(R.id.tv_ctrl);
+ textCtrl.setOnClickListener(CasCloudPhoneActivity.this);
+
+
setRotation(mOrientation);
isShowingLagInfoView = true;
gAcitivity = this;
@@ -442,7 +453,8 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
CASLog.i(TAG, "processStateChangeMsg code = " + code);
switch (code) {
case CasState.CAS_START_SUCCESS:
- lag.setVisibility(View.VISIBLE);
+ textCtrl.setBackground(null);
+ //lag.setVisibility(View.VISIBLE);
mProgressBar.setVisibility(View.GONE);
startSuccessThreadTask();
handleStartSuccessMsg(msg);
@@ -551,7 +563,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
if (Build.VERSION.SDK_INT >= 28) {
// Adapt by setting parameters
- params.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER;
+ params.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
} else {
CasAdaptPhoneUtils.getInstance().adaptPhoneNotch(this, params);
}
@@ -598,10 +610,12 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
public void updateLagInfoViewState() {
isShowingLagInfoView = !isShowingLagInfoView;
if (isShowingLagInfoView) {
- lag.setVisibility(View.VISIBLE);
+ textCtrl.setBackground(null);
+ //lag.setVisibility(View.VISIBLE);
lagSwitch.setText(R.string.cas_close_lag_view);
} else {
- lag.setVisibility(View.INVISIBLE);
+ textCtrl.setBackgroundResource(R.drawable.button_sub_action_selector);
+ //lag.setVisibility(View.INVISIBLE);
lagSwitch.setText(R.string.cas_show_lag_view);
}
}
@@ -805,18 +819,17 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
if (lagVal > REFERENCE_LAG_MAX_VALUE || lagVal <= REFERENCE_LAG_ZERO_VALUE) {
lagContent = "*";
}
- String lagStr = RESIDENT_LAG_FORMAT + lagContent + RESIDENT_LAG_UNIT_FORMAT;
if (lagVal > REFERENCE_LAG_MID_VALUE) {
- lag.setTextColor(Color.RED);
+ textCtrl.setTextColor(Color.RED);
} else if (lagVal > REFERENCE_LAG_MIN_VALUE) {
- lag.setTextColor(Color.YELLOW);
+ textCtrl.setTextColor(Color.YELLOW);
} else if (lagVal > REFERENCE_LAG_ZERO_VALUE) {
- lag.setTextColor(Color.GREEN);
+ textCtrl.setTextColor(Color.GREEN);
} else {
- lag.setTextColor(Color.RED);
+ textCtrl.setTextColor(Color.RED);
}
- lag.setText(lagStr);
+ textCtrl.setText(lagContent);
}
@Override
diff --git a/app/src/main/res/layout/cas_activity_fullscreen.xml b/app/src/main/res/layout/cas_activity_fullscreen.xml
index 6866007..b715b16 100644
--- a/app/src/main/res/layout/cas_activity_fullscreen.xml
+++ b/app/src/main/res/layout/cas_activity_fullscreen.xml
@@ -13,6 +13,11 @@
android:background="@color/cas_black"
android:focusable="true">
+
+
+
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/cas_ctrl_button_view.xml b/app/src/main/res/layout/cas_ctrl_button_view.xml
new file mode 100644
index 0000000..b189e85
--- /dev/null
+++ b/app/src/main/res/layout/cas_ctrl_button_view.xml
@@ -0,0 +1,12 @@
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/cas_ctrl_view.xml b/app/src/main/res/layout/cas_ctrl_view.xml
index 82531f7..6400586 100644
--- a/app/src/main/res/layout/cas_ctrl_view.xml
+++ b/app/src/main/res/layout/cas_ctrl_view.xml
@@ -60,21 +60,35 @@
-
+ android:layout_height="wrap_content"
+ android:orientation="horizontal"
+ >
-
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 2a051e4..ebf25a6 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -31,8 +31,7 @@
APP连接
H5连接
云手机port:
- 关闭时延数据
- 显示时延数据
+ 时延数据
编码类型:
软编
硬编
diff --git a/cloudphone/src/main/cpp/cas_decoder/CasDecoder.cpp b/cloudphone/src/main/cpp/cas_decoder/CasDecoder.cpp
index 0fab717..7744c1d 100644
--- a/cloudphone/src/main/cpp/cas_decoder/CasDecoder.cpp
+++ b/cloudphone/src/main/cpp/cas_decoder/CasDecoder.cpp
@@ -32,6 +32,7 @@ namespace {
const char *MIME_TYPE_H264 = "video/avc";
const char *MIME_TYPE_H265 = "video/hevc";
const char *HW_H264_DECODER_NAME = "OMX.hisi.video.decoder.avc";
+ const char *HW_H265_DECODER_NAME = " OMX.hisi.video.decoder.hevc";
// the end-of-picture bits appending to the origin h264 frame
const uint8_t H264_NAL_EOPIC[] = {
0x00, 0x00, 0x01, 0x1D,
@@ -92,9 +93,14 @@ uint32_t CasDecoder::Init(ANativeWindow *nativeWindow, FrameType frameType, int
INFO("DECODER_SDK_UNSUPPORTED m_sdkNo = %d", m_sdkNo);
return DECODER_SDK_UNSUPPORTED;
}
+ m_frameType = frameType;
m_mimeType = frameType == FrameType::H264 ? MIME_TYPE_H264 : MIME_TYPE_H265;
if (m_isHuawei && m_sdkNo >= SDK_VERSION_BORDER) {
- m_mediaCodec = AMediaCodec_createCodecByName(HW_H264_DECODER_NAME);
+ if (frameType == FrameType::H264) {
+ m_mediaCodec = AMediaCodec_createCodecByName(HW_H264_DECODER_NAME);
+ } else {
+ m_mediaCodec = AMediaCodec_createCodecByName(HW_H265_DECODER_NAME);
+ }
if (m_mediaCodec == nullptr) {
m_mediaCodec = AMediaCodec_createDecoderByType(m_mimeType);
m_isHuawei = false;
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/apiimpl/CloudPhoneImpl.java b/cloudphone/src/main/java/com/huawei/cloudphone/apiimpl/CloudPhoneImpl.java
index 85e53ab..ddb3569 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/apiimpl/CloudPhoneImpl.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/apiimpl/CloudPhoneImpl.java
@@ -241,6 +241,8 @@ public class CloudPhoneImpl implements ICloudPhone {
mViewGroup = null;
mAutoReconnectCount = 0;
CASLog.i(TAG, "exitCloudPhone end...");
+ Intent intent = new Intent("com.huawei.cloudapp.ui.CasCloudPhoneActivity.destroyed");
+ mContext.sendBroadcast(intent);
}
}
}
--
Gitee
From 9bac3b10fdddd3c40e2737e09b8b7a7ccfcf0419 Mon Sep 17 00:00:00 2001
From: wangshuo <584363327@qq.com>
Date: Fri, 18 Aug 2023 17:46:14 +0800
Subject: [PATCH 2/5] =?UTF-8?q?=E8=99=9A=E6=8B=9F=E4=BB=BF=E7=9C=9F?=
=?UTF-8?q?=E8=AE=BE=E5=A4=87=E5=9C=A8pause=E6=97=B6=E5=81=9C=E6=AD=A2?=
=?UTF-8?q?=E9=87=87=E9=9B=86=E5=8F=91=E9=80=81=E6=95=B0=E6=8D=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../cloudapp/ui/CasCloudPhoneActivity.java | 8 ++++++--
.../virtualdevice/VirtualDeviceSession.java | 14 ++++++++++++++
.../common/VirtualDeviceProtocol.java | 18 ++++++++++++++++++
.../sensor/VirtualSensorManager.java | 4 ++--
4 files changed, 40 insertions(+), 4 deletions(-)
diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
index 02a3cfe..84ffb5c 100644
--- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
+++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
@@ -275,7 +275,6 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
qualityRadioViewGroup.check(radioViewMain.getId());
qualityRadioViewGroup.setOnCheckedChangeListener(qualityCheckedChangeListener);
-
float dp = getResources().getDisplayMetrics().density;
ScopeHelper.builder().setLayout(R.layout.cas_ctrl_button_view).
setEnableEdgeAdsorption(true).
@@ -287,7 +286,6 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
textCtrl = (TextView) findViewById(R.id.tv_ctrl);
textCtrl.setOnClickListener(CasCloudPhoneActivity.this);
-
setRotation(mOrientation);
isShowingLagInfoView = true;
gAcitivity = this;
@@ -372,6 +370,9 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
super.onPause();
bIsStart = false;
mIsActivityBackground = true;
+ if (mVirtualDeviceSession != null) {
+ mVirtualDeviceSession.pause();
+ }
}
/**
@@ -392,6 +393,9 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
handler.sendMessage(message);
}
mCloudPhone.unmute();
+ if (mVirtualDeviceSession != null) {
+ mVirtualDeviceSession.resume();
+ }
}
/**
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
index a4ff95e..c576af5 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
@@ -54,4 +54,18 @@ public class VirtualDeviceSession {
mVirtualDevice = null;
}
}
+
+ public void pause() {
+ if (mVirtualDevice != null) {
+ mVirtualDevice.pauseVirtualDevice();
+ mVirtualDevice = null;
+ }
+ }
+
+ public void resume() {
+ if (mVirtualDevice != null) {
+ mVirtualDevice.restartVirtualDevice();
+ mVirtualDevice = null;
+ }
+ }
}
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
index a421a05..507c167 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
@@ -107,6 +107,24 @@ public class VirtualDeviceProtocol {
mContext.unregisterReceiver(mPermissionResultReceiver);
}
+ public void pauseVirtualDevice() {
+ if (virtualDeviceManagers == null || virtualDeviceManagers.isEmpty()) {
+ return;
+ }
+ for (Map.Entry entry : virtualDeviceManagers.entrySet()) {
+ entry.getValue().stop();
+ }
+ }
+
+ public void restartVirtualDevice() {
+ if (virtualDeviceManagers == null || virtualDeviceManagers.isEmpty()) {
+ return;
+ }
+ for (Map.Entry entry : virtualDeviceManagers.entrySet()) {
+ entry.getValue().start();
+ }
+ }
+
public void sendMsg(MsgHeader header, byte[] body, int deviceType) {
synchronized (mSendMsgLock) {
int length = header.getData().length;
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/sensor/VirtualSensorManager.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/sensor/VirtualSensorManager.java
index c363a67..9e780bc 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/sensor/VirtualSensorManager.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/sensor/VirtualSensorManager.java
@@ -29,8 +29,8 @@ import com.huawei.cloudphone.virtualdevice.common.VirtualDeviceProtocol.MsgHeade
public class VirtualSensorManager extends VirtualDeviceManager {
private static final String TAG = "VirtualSensorManager";
- public static final short DEV_GYROSCOPE = 0x0;
- public static final short DEV_ACCELERATION = 0x1;
+ public static final short DEV_ACCELERATION = 0x0;
+ public static final short DEV_GYROSCOPE = 0x1;
public static final short OPT_SENSOR_ENABLE_REQ = 0x1;
public static final short OPT_SENSOR_ENABLE_RSP = 0x1001;
public static final short OPT_SENSOR_DISABLE_REQ = 0x2;
--
Gitee
From 27045db119b67e76735d425b7a5940a44b35f077 Mon Sep 17 00:00:00 2001
From: wangshuo <584363327@qq.com>
Date: Sat, 26 Aug 2023 10:00:50 +0800
Subject: [PATCH 3/5] =?UTF-8?q?=E6=82=AC=E6=B5=AEctrl=E9=94=AE=E5=8F=AF?=
=?UTF-8?q?=E7=A7=BB=E5=8A=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/huawei/cloudapp/common/CasState.java | 1 +
.../cloudapp/ui/CasCloudPhoneActivity.java | 42 ++++++++-----------
.../main/res/layout/cas_ctrl_button_view.xml | 3 +-
app/src/main/res/layout/cas_ctrl_view.xml | 28 +++++++++----
app/src/main/res/values/colors.xml | 2 +-
app/src/main/res/values/strings.xml | 4 +-
.../virtualdevice/VirtualDeviceSession.java | 14 -------
.../common/VirtualDeviceProtocol.java | 18 --------
8 files changed, 42 insertions(+), 70 deletions(-)
diff --git a/app/src/main/java/com/huawei/cloudapp/common/CasState.java b/app/src/main/java/com/huawei/cloudapp/common/CasState.java
index 2503e76..80cacb4 100644
--- a/app/src/main/java/com/huawei/cloudapp/common/CasState.java
+++ b/app/src/main/java/com/huawei/cloudapp/common/CasState.java
@@ -31,6 +31,7 @@ public class CasState {
static public final int CAS_VERIFY_AESKEY_INVALID = 0x0604;
static public final int CAS_VERIFY_DECRYPT_FAILED = 0x0605;
static public final int CAS_VERIFY_FAILED = 0x0606;
+ static public final int CAS_VERIFY_SESSION_ID_INVALID = 0x0607;
static public final int CAS_START_SUCCESS = 0x0800;
static public final int CAS_PARAMETER_MISSING = 0x0904;
diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
index 84ffb5c..e16b34b 100644
--- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
+++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
@@ -150,7 +150,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
private Switch lagSwitch;
private TextView textCtrl;
private RelativeLayout ctrView;
- private Button mQuitCloudPhone;
+ private TextView mQuitCloudPhone;
// intent trans value
private CasConnectInfo connectInfo;
@@ -264,7 +264,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
lagSwitch.setOnClickListener(CasCloudPhoneActivity.this);
ctrView = (RelativeLayout) findViewById(R.id.ctr_view);
ctrView.setOnClickListener(CasCloudPhoneActivity.this);
- mQuitCloudPhone = (Button) findViewById(R.id.quit_cloud_phone);
+ mQuitCloudPhone = (TextView) findViewById(R.id.quit_cloud_phone);
mQuitCloudPhone.setOnClickListener(CasCloudPhoneActivity.this);
// ctrlView
qualityRadioViewGroup = findViewById(R.id.pic_quality_choose_layout);
@@ -285,9 +285,10 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
build().toControl(this).show();
textCtrl = (TextView) findViewById(R.id.tv_ctrl);
textCtrl.setOnClickListener(CasCloudPhoneActivity.this);
+ textCtrl.setBackgroundResource(R.drawable.button_sub_action_selector);
setRotation(mOrientation);
- isShowingLagInfoView = true;
+ lagSwitch.setChecked(false);
gAcitivity = this;
try {
mCloudPhone = CloudPhoneManager.createCloudPhoneInstance();
@@ -370,9 +371,6 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
super.onPause();
bIsStart = false;
mIsActivityBackground = true;
- if (mVirtualDeviceSession != null) {
- mVirtualDeviceSession.pause();
- }
}
/**
@@ -393,9 +391,6 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
handler.sendMessage(message);
}
mCloudPhone.unmute();
- if (mVirtualDeviceSession != null) {
- mVirtualDeviceSession.resume();
- }
}
/**
@@ -457,8 +452,6 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
CASLog.i(TAG, "processStateChangeMsg code = " + code);
switch (code) {
case CasState.CAS_START_SUCCESS:
- textCtrl.setBackground(null);
- //lag.setVisibility(View.VISIBLE);
mProgressBar.setVisibility(View.GONE);
startSuccessThreadTask();
handleStartSuccessMsg(msg);
@@ -490,6 +483,9 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
case CasState.CAS_VERIFY_FAILED:
showDialog(getResources().getString(R.string.cas_phone_start_auth_fail_tip_message));
break;
+ case CasState.CAS_VERIFY_SESSION_ID_INVALID:
+ showDialog(getResources().getString(R.string.cas_phone_session_invalid_tip_message));
+ break;
case CasState.CAS_TRAIL_PLAY_TIMEOUT:
mIsTrailPlayTimeout = true;
if (!mIsActivityBackground) {
@@ -611,16 +607,11 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
/**
* update lag info view state
*/
- public void updateLagInfoViewState() {
- isShowingLagInfoView = !isShowingLagInfoView;
- if (isShowingLagInfoView) {
- textCtrl.setBackground(null);
- //lag.setVisibility(View.VISIBLE);
- lagSwitch.setText(R.string.cas_close_lag_view);
- } else {
- textCtrl.setBackgroundResource(R.drawable.button_sub_action_selector);
- //lag.setVisibility(View.INVISIBLE);
- lagSwitch.setText(R.string.cas_show_lag_view);
+ public void updateLagInfoViewState(Boolean isChecked) {
+ isShowingLagInfoView = isChecked;
+ if (!isShowingLagInfoView) {
+ textCtrl.setText("CTRL");
+ textCtrl.setTextColor(getResources().getColor(R.color.black));
}
}
@@ -731,10 +722,10 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
final CasCommonDialog.Builder builder = new CasCommonDialog.Builder(this);
CasCommonDialog.DialogClickListener dialogListener = new CasCommonDialog.DialogClickListener();
- builder.setTitle(R.string.cas_phone_quit_app_tip_message);
+ builder.setTitle(R.string.cas_phone_quit_tip_message);
builder.setContentView(contentView);
- builder.setPositiveButton("取消", dialogListener);
- builder.setNegativeButton("退出", new DialogInterface.OnClickListener() {
+ builder.setPositiveButton(getResources().getString(R.string.cas_phone_cancel_tip_message), dialogListener);
+ builder.setNegativeButton(getResources().getString(R.string.cas_phone_quit_tip_message), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
CASLog.i(TAG, "showUiLevelDialog stopCloudPhone");
@@ -819,6 +810,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
* resident lag
*/
private void setLagText(int lagVal) {
+ if (!isShowingLagInfoView) return;
String lagContent = String.valueOf(lagVal);
if (lagVal > REFERENCE_LAG_MAX_VALUE || lagVal <= REFERENCE_LAG_ZERO_VALUE) {
lagContent = "*";
@@ -847,7 +839,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
} else if (id == R.id.ctr_view) {
switchCtrlViewShow();
} else if (id == R.id.lag_switch) {
- updateLagInfoViewState();
+ updateLagInfoViewState(lagSwitch.isChecked());
}
}
diff --git a/app/src/main/res/layout/cas_ctrl_button_view.xml b/app/src/main/res/layout/cas_ctrl_button_view.xml
index b189e85..0d933fc 100644
--- a/app/src/main/res/layout/cas_ctrl_button_view.xml
+++ b/app/src/main/res/layout/cas_ctrl_button_view.xml
@@ -7,6 +7,7 @@
android:clickable="true"
android:gravity="center"
android:text="CTRL"
- android:textSize="10sp"
+ android:textSize="16sp"
+ android:alpha="0.8"
android:textColor="@android:color/black">
\ No newline at end of file
diff --git a/app/src/main/res/layout/cas_ctrl_view.xml b/app/src/main/res/layout/cas_ctrl_view.xml
index 6400586..25a81e3 100644
--- a/app/src/main/res/layout/cas_ctrl_view.xml
+++ b/app/src/main/res/layout/cas_ctrl_view.xml
@@ -62,7 +62,7 @@
@@ -70,23 +70,33 @@
android:id="@+id/lag_switch"
android:layout_width="0dp"
android:layout_weight="1"
- android:layout_height="60dp"
- android:paddingLeft="20dp"
- android:paddingRight="10dp"
+ android:layout_height="match_parent"
+ android:paddingStart="20dp"
+ android:paddingEnd="10dp"
+ android:layout_marginTop="5dp"
+ android:layout_marginBottom="5dp"
+ android:layout_marginLeft="5dp"
+ android:layout_marginRight="5dp"
android:alpha="0.8"
- android:checked="true"
- android:layout_gravity="center"
+ android:background="@color/cas_bg_color"
android:text="@string/cas_lag_view"
android:textSize="16sp" />
-
+ android:textColor="@color/black"/>
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 64d79fe..d55f1bf 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -13,7 +13,7 @@
#FFFFFF
#000000
- #70000000
+ #A8000000
#424242
#a1a1a1
#42369a
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ebf25a6..101bdd5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -10,7 +10,6 @@
退出
确定
取消
- 退出
连接服务器失败,请稍后重试
启动失败
认证失败
@@ -27,11 +26,12 @@
输入的参数不合法
初始化状态错误,请重试
初始化失败,请重试
+ 登陆信息失效,请重新登陆
云手机ip:
APP连接
H5连接
云手机port:
- 时延数据
+ 时延
编码类型:
软编
硬编
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
index c576af5..a4ff95e 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/VirtualDeviceSession.java
@@ -54,18 +54,4 @@ public class VirtualDeviceSession {
mVirtualDevice = null;
}
}
-
- public void pause() {
- if (mVirtualDevice != null) {
- mVirtualDevice.pauseVirtualDevice();
- mVirtualDevice = null;
- }
- }
-
- public void resume() {
- if (mVirtualDevice != null) {
- mVirtualDevice.restartVirtualDevice();
- mVirtualDevice = null;
- }
- }
}
diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
index 507c167..a421a05 100644
--- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
+++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java
@@ -107,24 +107,6 @@ public class VirtualDeviceProtocol {
mContext.unregisterReceiver(mPermissionResultReceiver);
}
- public void pauseVirtualDevice() {
- if (virtualDeviceManagers == null || virtualDeviceManagers.isEmpty()) {
- return;
- }
- for (Map.Entry entry : virtualDeviceManagers.entrySet()) {
- entry.getValue().stop();
- }
- }
-
- public void restartVirtualDevice() {
- if (virtualDeviceManagers == null || virtualDeviceManagers.isEmpty()) {
- return;
- }
- for (Map.Entry entry : virtualDeviceManagers.entrySet()) {
- entry.getValue().start();
- }
- }
-
public void sendMsg(MsgHeader header, byte[] body, int deviceType) {
synchronized (mSendMsgLock) {
int length = header.getData().length;
--
Gitee
From 2e71029fa152160655c904bbda710d5f089fc777 Mon Sep 17 00:00:00 2001
From: wangshuo <584363327@qq.com>
Date: Tue, 29 Aug 2023 10:58:28 +0800
Subject: [PATCH 4/5] =?UTF-8?q?=E6=82=AC=E6=B5=AEctrl=E9=94=AE=E5=8F=AF?=
=?UTF-8?q?=E7=A7=BB=E5=8A=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
index e16b34b..e33eb16 100644
--- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
+++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java
@@ -722,10 +722,10 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
final CasCommonDialog.Builder builder = new CasCommonDialog.Builder(this);
CasCommonDialog.DialogClickListener dialogListener = new CasCommonDialog.DialogClickListener();
- builder.setTitle(R.string.cas_phone_quit_tip_message);
+ builder.setTitle(R.string.cas_phone_quit_app_tip_message);
builder.setContentView(contentView);
builder.setPositiveButton(getResources().getString(R.string.cas_phone_cancel_tip_message), dialogListener);
- builder.setNegativeButton(getResources().getString(R.string.cas_phone_quit_tip_message), new DialogInterface.OnClickListener() {
+ builder.setNegativeButton(getResources().getString(R.string.cas_phone_quit_app_tip_message), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
CASLog.i(TAG, "showUiLevelDialog stopCloudPhone");
@@ -746,7 +746,7 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl
CasCommonDialog.DialogClickListener dialogListener = new CasCommonDialog.DialogClickListener();
builder.setTitle(R.string.cas_phone_tip);
builder.setMessage(message);
- builder.setPositiveButton(R.string.cas_phone_quit_tip_message, dialogListener);
+ builder.setPositiveButton(R.string.cas_phone_quit_app_tip_message, dialogListener);
mDialog = builder.create();
mDialog.setCanceledOnTouchOutside(false);
--
Gitee
From 018e82b854aa7b5da4e62eb3a3a8aa4d4ee1c2d3 Mon Sep 17 00:00:00 2001
From: wangshuo <584363327@qq.com>
Date: Tue, 29 Aug 2023 11:17:56 +0800
Subject: [PATCH 5/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=99=BB=E5=BD=95?=
=?UTF-8?q?=E5=AD=97=E6=AE=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/res/values/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 101bdd5..27b292d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -26,7 +26,7 @@
输入的参数不合法
初始化状态错误,请重试
初始化失败,请重试
- 登陆信息失效,请重新登陆
+ 登录信息失效,请重新登录
云手机ip:
APP连接
H5连接
--
Gitee