check params
@@ -308,6 +368,14 @@ public class CasConnectInfo implements Parcelable { return false; } } + String frameType = params.get(FRAME_TYPE); + if (frameType == null) { + frameType = "h264"; + } + String encodeType = params.get(ENCODE_TYPE); + if (encodeType == null) { + encodeType = "0"; + } setConnectIp(ip); setConnectPort(port); setBackgroundTimeout(backgroundTimeout); @@ -318,6 +386,10 @@ public class CasConnectInfo implements Parcelable { setAesKey(aesKey); setUserId(userId); setTouchTimeout(touchTimeOut); + setFrameType(frameType); + setEncodeType(Integer.parseInt(encodeType)); + setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_IP)); + setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_PORT)); return true; } } diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java index 4501f59..b205670 100644 --- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java +++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java @@ -22,6 +22,8 @@ import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.EditText; +import android.widget.LinearLayout; +import android.widget.RadioGroup; import com.huawei.cloudapp.R; import com.huawei.cloudapp.common.CASLog; @@ -34,6 +36,14 @@ public class CasCloudMainActivity extends Activity { private static final String TAG = "CasCloudMainActivity"; private EditText mCloudPhoneId; private EditText mCloudPhonePort; + private RadioGroup mEncodeTypeGroup; + private int mEncodeType = 0; + private String mFrameType = "h264"; + private LinearLayout mRemoteEncodeServerIpLayout; + private LinearLayout mRemoteEncodeServerPortLayout; + private EditText mRemoteEncodeServerIp; + private EditText mRemoteEncodeServerPort; + private RadioGroup mFrameTypeGroup; @Override protected void onCreate(Bundle savedInstanceState) { @@ -45,6 +55,52 @@ public class CasCloudMainActivity extends Activity { private void initView() { mCloudPhoneId = findViewById(R.id.cloud_phone_id); mCloudPhonePort = findViewById(R.id.cloud_phone_port); + mEncodeTypeGroup = findViewById(R.id.encodeTypeRadioButtonGroup); + mFrameTypeGroup = findViewById(R.id.frameTypeRadioButtonGroup); + mRemoteEncodeServerIpLayout = findViewById(R.id.remote_ip_view_layout); + mRemoteEncodeServerPortLayout = findViewById(R.id.remote_port_view_layout); + mRemoteEncodeServerIp = findViewById(R.id.edit_text_remote_ip); + mRemoteEncodeServerPort = findViewById(R.id.edit_text_remote_port); + + mEncodeTypeGroup.check(R.id.radioButtonCpu); + mEncodeTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int i) { + switch (i) { + case R.id.radioButtonCpu: + mEncodeType = 1; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + case R.id.radioButtonGpu: + mEncodeType = 2; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + case R.id.radioButtonRemote: + mRemoteEncodeServerIpLayout.setVisibility(View.VISIBLE); + mRemoteEncodeServerPortLayout.setVisibility(View.VISIBLE); + break; + default: + mEncodeType = 0; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + } + } + }); + + mFrameTypeGroup.check(R.id.radioButtonH264); + mEncodeTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int i) { + if (i == R.id.radioButtonH265) { + mFrameType = "h265"; + } else { + mFrameType = "h264"; + } + } + }); } public void cloudPhoneConnect(View view) { @@ -58,18 +114,21 @@ public class CasCloudMainActivity extends Activity { CASLog.e(TAG, "输入Port为空"); return; } - startCloudPhoneActivity(phoneIp, phonePort); + String remoteEncodeServerIP = mRemoteEncodeServerIp.getText().toString().trim(); + String remoteEncodeServerPort = mRemoteEncodeServerPort.getText().toString().trim(); + + startCloudPhoneActivity(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); } - private void startCloudPhoneActivity(String phoneIp, String phonePort) { + private void startCloudPhoneActivity(String phoneIp, String phonePort, String remoteEncodeServerIP, String remoteEncodeServerPort) { Intent intent = new Intent(CasCloudMainActivity.this, CasCloudPhoneActivity.class); - CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort); + CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); intent.putExtra(CasConnectInfo.BUNDLE_KEY, connectorInfo); startActivity(intent); } - private CasConnectInfo getCasConnectorInfo(String phoneIp, String phonePort) { + private CasConnectInfo getCasConnectorInfo(String phoneIp, String phonePort, String remoteEncodeServerIP, String remoteEncodeServerPort) { String sessionId = UUID.randomUUID().toString().replaceAll("-", ""); CasConnectInfo connectorInfo = new CasConnectInfo(); connectorInfo.setConnectIp(phoneIp); @@ -82,6 +141,10 @@ public class CasCloudMainActivity extends Activity { connectorInfo.setAesKey("11111111111111111111111111111111"); connectorInfo.setAuthTs("987654321"); connectorInfo.setTouchTimeout("0"); + connectorInfo.setEncodeType(mEncodeType); + connectorInfo.setFrameType(mFrameType); + connectorInfo.setRemoteEncodeServerIp(remoteEncodeServerIP); + connectorInfo.setRemoteEncodeServerPort(remoteEncodeServerPort); return connectorInfo; } 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 cd098ab..a26c665 100644 --- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java +++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudPhoneActivity.java @@ -79,8 +79,12 @@ import static com.huawei.cloudapp.utils.CasConstantsUtil.AES_KEY; import static com.huawei.cloudapp.utils.CasConstantsUtil.AUTH_TS; import static com.huawei.cloudapp.utils.CasConstantsUtil.AVAILABLE_PLAYTIME; import static com.huawei.cloudapp.utils.CasConstantsUtil.BACKGROUND_TIMEOUT; +import static com.huawei.cloudapp.utils.CasConstantsUtil.ENCODE_TYPE; +import static com.huawei.cloudapp.utils.CasConstantsUtil.FRAME_TYPE; import static com.huawei.cloudapp.utils.CasConstantsUtil.IP; import static com.huawei.cloudapp.utils.CasConstantsUtil.PORT; +import static com.huawei.cloudapp.utils.CasConstantsUtil.REMOTE_ENCODE_SERVER_IP; +import static com.huawei.cloudapp.utils.CasConstantsUtil.REMOTE_ENCODE_SERVER_PORT; import static com.huawei.cloudapp.utils.CasConstantsUtil.SESSION_ID; import static com.huawei.cloudapp.utils.CasConstantsUtil.TICKET; import static com.huawei.cloudapp.utils.CasConstantsUtil.TOUCH_TIMEOUT; @@ -294,6 +298,10 @@ public class CasCloudPhoneActivity extends FragmentActivity implements View.OnCl parasMap.put(AVAILABLE_PLAYTIME, connectInfo.getAvailablePlayTime()); parasMap.put(USER_ID, connectInfo.getUserId()); parasMap.put(TOUCH_TIMEOUT, connectInfo.getTouchTimeout()); + parasMap.put(FRAME_TYPE, connectInfo.getFrameType()); + parasMap.put(ENCODE_TYPE, String.valueOf(connectInfo.getEncodeType())); + parasMap.put(REMOTE_ENCODE_SERVER_IP, connectInfo.getRemoteEncodeServerIp()); + parasMap.put(REMOTE_ENCODE_SERVER_PORT, connectInfo.getRemoteEncodeServerPort()); mCloudPhone.registerCloudPhoneStateListener(new CloudPhoneStateListenerImpl()); mCloudPhone.registerOnOrientationChangeListener(new CloudPhoneOrientationListener()); mCloudPhone.registerOnVirtualDevDataListener(new CloudPhoneVirtualDevDataListenerImpl()); diff --git a/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java b/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java index 9b7fb51..fcba689 100644 --- a/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java +++ b/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java @@ -83,6 +83,26 @@ public class CasConstantsUtil { */ public static final String TOUCH_TIMEOUT = "touch_timeout"; + /** + * frame_type + */ + public static final String FRAME_TYPE = "frame_type"; + + /** + * encode_type + */ + public static final String ENCODE_TYPE = "encode_type"; + + /** + * remote_encode_server_ip + */ + public static final String REMOTE_ENCODE_SERVER_IP = "remote_encode_server_ip"; + + /** + * remote_encode_server_port + */ + public static final String REMOTE_ENCODE_SERVER_PORT = "remote_encode_server_port"; + /** * check aes key */ diff --git a/app/src/main/res/layout/activity_cas_cloud_main.xml b/app/src/main/res/layout/activity_cas_cloud_main.xml index e66ff8c..b2e7e16 100644 --- a/app/src/main/res/layout/activity_cas_cloud_main.xml +++ b/app/src/main/res/layout/activity_cas_cloud_main.xml @@ -12,7 +12,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" - android:layout_marginTop="50dp" + android:layout_marginTop="30dp" android:layout_marginRight="20dp" android:orientation="horizontal"> @@ -39,7 +39,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" - android:layout_marginTop="50dp" + android:layout_marginTop="30dp" android:layout_marginRight="20dp" android:orientation="horizontal"> @@ -62,6 +62,148 @@ +check params
@@ -356,6 +415,14 @@ public class CasConnectorInfo implements Parcelable { return false; } } + String frameType = params.get(FRAME_TYPE); + if (frameType == null) { + frameType = "h264"; + } + String encodeType = params.get(ENCODE_TYPE); + if (encodeType == null) { + encodeType = "0"; + } setConnectIp(ip); setConnectPort(port); setBackgroundTimeout(backgroundTimeout); @@ -367,6 +434,10 @@ public class CasConnectorInfo implements Parcelable { setUserId(userId); setSdkVersion(BuildConfig.VERSION_NAME); setTouchTimeout(touchTimeOut); + setFrameType(frameType); + setEncodeType(Integer.parseInt(encodeType)); + setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_IP)); + setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_PORT)); return true; } } diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/utils/CasConstantsUtil.java b/cloudphone/src/main/java/com/huawei/cloudphone/utils/CasConstantsUtil.java index d3c99fc..f31b49f 100644 --- a/cloudphone/src/main/java/com/huawei/cloudphone/utils/CasConstantsUtil.java +++ b/cloudphone/src/main/java/com/huawei/cloudphone/utils/CasConstantsUtil.java @@ -157,4 +157,24 @@ public class CasConstantsUtil { * check whether is positive number */ public static final Pattern POSITIVE_NUMBER_PATTERN = Pattern.compile("^[1-9]\\d*$"); + + /** + * frame_type + */ + public static final String FRAME_TYPE = "frame_type"; + + /** + * encode_type + */ + public static final String ENCODE_TYPE = "encode_type"; + + /** + * remote_encode_server_ip + */ + public static final String REMOTE_ENCODE_SERVER_IP = "remote_encode_server_ip"; + + /** + * remote_encode_server_port + */ + public static final String REMOTE_ENCODE_SERVER_PORT = "remote_encode_server_port"; } -- Gitee From 69e532698e8aab4a1bc157746b60c8c4031f5523 Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 1 Jun 2023 22:20:18 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E9=85=8D=E7=BD=AE=EF=BC=8C=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=E9=9F=B3=E8=A7=86=E9=A2=91=E6=97=B6=E5=8F=91=E9=80=81?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E7=BB=99=E4=BA=91=E6=9C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cloudapp/ui/CasCloudMainActivity.java | 71 ++++++++- .../cloudapp/utils/CasConstantsUtil.java | 20 +++ .../res/layout/activity_cas_cloud_main.xml | 146 +++++++++++++++++- app/src/main/res/values/strings.xml | 9 ++ .../cloudphone/apiimpl/CloudPhoneImpl.java | 15 ++ .../cloudphone/utils/CasConstantsUtil.java | 20 +++ 6 files changed, 275 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java index 4501f59..b205670 100644 --- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java +++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java @@ -22,6 +22,8 @@ import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.EditText; +import android.widget.LinearLayout; +import android.widget.RadioGroup; import com.huawei.cloudapp.R; import com.huawei.cloudapp.common.CASLog; @@ -34,6 +36,14 @@ public class CasCloudMainActivity extends Activity { private static final String TAG = "CasCloudMainActivity"; private EditText mCloudPhoneId; private EditText mCloudPhonePort; + private RadioGroup mEncodeTypeGroup; + private int mEncodeType = 0; + private String mFrameType = "h264"; + private LinearLayout mRemoteEncodeServerIpLayout; + private LinearLayout mRemoteEncodeServerPortLayout; + private EditText mRemoteEncodeServerIp; + private EditText mRemoteEncodeServerPort; + private RadioGroup mFrameTypeGroup; @Override protected void onCreate(Bundle savedInstanceState) { @@ -45,6 +55,52 @@ public class CasCloudMainActivity extends Activity { private void initView() { mCloudPhoneId = findViewById(R.id.cloud_phone_id); mCloudPhonePort = findViewById(R.id.cloud_phone_port); + mEncodeTypeGroup = findViewById(R.id.encodeTypeRadioButtonGroup); + mFrameTypeGroup = findViewById(R.id.frameTypeRadioButtonGroup); + mRemoteEncodeServerIpLayout = findViewById(R.id.remote_ip_view_layout); + mRemoteEncodeServerPortLayout = findViewById(R.id.remote_port_view_layout); + mRemoteEncodeServerIp = findViewById(R.id.edit_text_remote_ip); + mRemoteEncodeServerPort = findViewById(R.id.edit_text_remote_port); + + mEncodeTypeGroup.check(R.id.radioButtonCpu); + mEncodeTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int i) { + switch (i) { + case R.id.radioButtonCpu: + mEncodeType = 1; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + case R.id.radioButtonGpu: + mEncodeType = 2; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + case R.id.radioButtonRemote: + mRemoteEncodeServerIpLayout.setVisibility(View.VISIBLE); + mRemoteEncodeServerPortLayout.setVisibility(View.VISIBLE); + break; + default: + mEncodeType = 0; + mRemoteEncodeServerIpLayout.setVisibility(View.GONE); + mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + break; + } + } + }); + + mFrameTypeGroup.check(R.id.radioButtonH264); + mEncodeTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int i) { + if (i == R.id.radioButtonH265) { + mFrameType = "h265"; + } else { + mFrameType = "h264"; + } + } + }); } public void cloudPhoneConnect(View view) { @@ -58,18 +114,21 @@ public class CasCloudMainActivity extends Activity { CASLog.e(TAG, "输入Port为空"); return; } - startCloudPhoneActivity(phoneIp, phonePort); + String remoteEncodeServerIP = mRemoteEncodeServerIp.getText().toString().trim(); + String remoteEncodeServerPort = mRemoteEncodeServerPort.getText().toString().trim(); + + startCloudPhoneActivity(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); } - private void startCloudPhoneActivity(String phoneIp, String phonePort) { + private void startCloudPhoneActivity(String phoneIp, String phonePort, String remoteEncodeServerIP, String remoteEncodeServerPort) { Intent intent = new Intent(CasCloudMainActivity.this, CasCloudPhoneActivity.class); - CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort); + CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); intent.putExtra(CasConnectInfo.BUNDLE_KEY, connectorInfo); startActivity(intent); } - private CasConnectInfo getCasConnectorInfo(String phoneIp, String phonePort) { + private CasConnectInfo getCasConnectorInfo(String phoneIp, String phonePort, String remoteEncodeServerIP, String remoteEncodeServerPort) { String sessionId = UUID.randomUUID().toString().replaceAll("-", ""); CasConnectInfo connectorInfo = new CasConnectInfo(); connectorInfo.setConnectIp(phoneIp); @@ -82,6 +141,10 @@ public class CasCloudMainActivity extends Activity { connectorInfo.setAesKey("11111111111111111111111111111111"); connectorInfo.setAuthTs("987654321"); connectorInfo.setTouchTimeout("0"); + connectorInfo.setEncodeType(mEncodeType); + connectorInfo.setFrameType(mFrameType); + connectorInfo.setRemoteEncodeServerIp(remoteEncodeServerIP); + connectorInfo.setRemoteEncodeServerPort(remoteEncodeServerPort); return connectorInfo; } diff --git a/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java b/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java index 9b7fb51..fcba689 100644 --- a/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java +++ b/app/src/main/java/com/huawei/cloudapp/utils/CasConstantsUtil.java @@ -83,6 +83,26 @@ public class CasConstantsUtil { */ public static final String TOUCH_TIMEOUT = "touch_timeout"; + /** + * frame_type + */ + public static final String FRAME_TYPE = "frame_type"; + + /** + * encode_type + */ + public static final String ENCODE_TYPE = "encode_type"; + + /** + * remote_encode_server_ip + */ + public static final String REMOTE_ENCODE_SERVER_IP = "remote_encode_server_ip"; + + /** + * remote_encode_server_port + */ + public static final String REMOTE_ENCODE_SERVER_PORT = "remote_encode_server_port"; + /** * check aes key */ diff --git a/app/src/main/res/layout/activity_cas_cloud_main.xml b/app/src/main/res/layout/activity_cas_cloud_main.xml index e66ff8c..b2e7e16 100644 --- a/app/src/main/res/layout/activity_cas_cloud_main.xml +++ b/app/src/main/res/layout/activity_cas_cloud_main.xml @@ -12,7 +12,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" - android:layout_marginTop="50dp" + android:layout_marginTop="30dp" android:layout_marginRight="20dp" android:orientation="horizontal"> @@ -39,7 +39,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" - android:layout_marginTop="50dp" + android:layout_marginTop="30dp" android:layout_marginRight="20dp" android:orientation="horizontal"> @@ -62,6 +62,148 @@ +check params
@@ -368,14 +308,6 @@ public class CasConnectInfo implements Parcelable { return false; } } - String frameType = params.get(FRAME_TYPE); - if (frameType == null) { - frameType = "h264"; - } - String encodeType = params.get(ENCODE_TYPE); - if (encodeType == null) { - encodeType = "0"; - } setConnectIp(ip); setConnectPort(port); setBackgroundTimeout(backgroundTimeout); @@ -386,10 +318,6 @@ public class CasConnectInfo implements Parcelable { setAesKey(aesKey); setUserId(userId); setTouchTimeout(touchTimeOut); - setFrameType(frameType); - setEncodeType(Integer.parseInt(encodeType)); - setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_IP)); - setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_PORT)); return true; } } diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java index b205670..988702a 100644 --- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java +++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java @@ -16,6 +16,12 @@ package com.huawei.cloudapp.ui; +import static com.huawei.cloudapp.ui.CasCloudPhoneActivity.MEDIA_CONFIG; +import static com.huawei.cloudapp.utils.CasConstantsUtil.ENCODE_TYPE; +import static com.huawei.cloudapp.utils.CasConstantsUtil.FRAME_TYPE; +import static com.huawei.cloudapp.utils.CasConstantsUtil.REMOTE_ENCODE_SERVER_IP; +import static com.huawei.cloudapp.utils.CasConstantsUtil.REMOTE_ENCODE_SERVER_PORT; + import android.app.Activity; import android.content.Intent; import android.os.Bundle; @@ -29,6 +35,9 @@ import com.huawei.cloudapp.R; import com.huawei.cloudapp.common.CASLog; import com.huawei.cloudapp.common.CasConnectInfo; +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; import java.util.UUID; public class CasCloudMainActivity extends Activity { @@ -91,7 +100,7 @@ public class CasCloudMainActivity extends Activity { }); mFrameTypeGroup.check(R.id.radioButtonH264); - mEncodeTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + mFrameTypeGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { if (i == R.id.radioButtonH265) { @@ -114,21 +123,35 @@ public class CasCloudMainActivity extends Activity { CASLog.e(TAG, "输入Port为空"); return; } - String remoteEncodeServerIP = mRemoteEncodeServerIp.getText().toString().trim(); + String remoteEncodeServerIp = mRemoteEncodeServerIp.getText().toString().trim(); String remoteEncodeServerPort = mRemoteEncodeServerPort.getText().toString().trim(); + if (mEncodeType == 3) { + if (remoteEncodeServerIp.isEmpty() || remoteEncodeServerPort.isEmpty()) { + CASLog.e(TAG, "远编服务器信息不全"); + return; + } + } - startCloudPhoneActivity(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); + startCloudPhoneActivity(phoneIp, phonePort, remoteEncodeServerIp, remoteEncodeServerPort); } - private void startCloudPhoneActivity(String phoneIp, String phonePort, String remoteEncodeServerIP, String remoteEncodeServerPort) { + private void startCloudPhoneActivity(String phoneIp, String phonePort, String remoteEncodeServerIp, String remoteEncodeServerPort) { Intent intent = new Intent(CasCloudMainActivity.this, CasCloudPhoneActivity.class); - CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort, remoteEncodeServerIP, remoteEncodeServerPort); + CasConnectInfo connectorInfo = getCasConnectorInfo(phoneIp, phonePort); + Mapcheck params
@@ -415,14 +356,6 @@ public class CasConnectorInfo implements Parcelable { return false; } } - String frameType = params.get(FRAME_TYPE); - if (frameType == null) { - frameType = "h264"; - } - String encodeType = params.get(ENCODE_TYPE); - if (encodeType == null) { - encodeType = "0"; - } setConnectIp(ip); setConnectPort(port); setBackgroundTimeout(backgroundTimeout); @@ -434,10 +367,6 @@ public class CasConnectorInfo implements Parcelable { setUserId(userId); setSdkVersion(BuildConfig.VERSION_NAME); setTouchTimeout(touchTimeOut); - setFrameType(frameType); - setEncodeType(Integer.parseInt(encodeType)); - setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_IP)); - setRemoteEncodeServerIp(params.get(REMOTE_ENCODE_SERVER_PORT)); return true; } } -- Gitee From c8aa8e5200edf7988f44dca63b83dc686a7186e0 Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Fri, 2 Jun 2023 23:23:06 +0800 Subject: [PATCH 7/9] =?UTF-8?q?Revert=20"!5=20=E5=AE=89=E5=8D=93SDK?= =?UTF-8?q?=E8=A7=A6=E6=8E=A7=E5=B8=A6=E6=97=B6=E9=97=B4=E6=88=B3"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit bcc5965033df3afb3ed6011560e9dc050ee9d3cd. --- README.md | 2 +- .../huawei/cloudphone/ICASAidlInterface.aidl | 2 +- cloudphone/src/main/cpp/CasController.cpp | 5 +- cloudphone/src/main/cpp/CasController.h | 2 +- cloudphone/src/main/cpp/CasJniBridge.cpp | 4 +- cloudphone/src/main/cpp/CasJniBridge.h | 3 +- cloudphone/src/main/cpp/cas_common/CasMsg.h | 6 +- .../src/main/cpp/cas_service/CasTouch.cpp | 9 +-- .../src/main/cpp/cas_service/CasTouch.h | 2 +- .../cloudphone/apiimpl/CloudPhoneImpl.java | 64 +++++++++--------- .../cloudphone/jniwrapper/JNIWrapper.java | 2 +- .../cloudphone/jniwrapper/JniBridge.java | 4 +- .../huawei/cloudphone/service/CASClient.java | 4 +- .../cloudphone/service/CasProcessor.java | 4 +- ...4\344\273\266\344\272\244\344\272\222.png" | Bin 20348 -> 0 bytes 15 files changed, 51 insertions(+), 62 deletions(-) delete mode 100644 "res/\347\273\204\344\273\266\344\272\244\344\272\222.png" diff --git a/README.md b/README.md index 07b8169..fc394b8 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ### 2. 组件交互 - + 1. SDK->RemoteServer: 客户端SDK向后端server请求一个空闲云机实例 2. RemoteServer->SDK: 后端server按需求找到一个空闲云机实例信息返回给客户端SDK diff --git a/cloudphone/src/main/aidl/com/huawei/cloudphone/ICASAidlInterface.aidl b/cloudphone/src/main/aidl/com/huawei/cloudphone/ICASAidlInterface.aidl index 21b9d45..561f92e 100644 --- a/cloudphone/src/main/aidl/com/huawei/cloudphone/ICASAidlInterface.aidl +++ b/cloudphone/src/main/aidl/com/huawei/cloudphone/ICASAidlInterface.aidl @@ -52,7 +52,7 @@ interface ICASAidlInterface { void unregisterListener(); - boolean sendTouchEvent(in int id, in int action, in int x, in int y, in int pressure, long time, int orientation, int height, int width); + boolean sendTouchEvent(in int id, in int action, in int x, in int y, in int pressure); boolean sendKeyEvent(int keycode, int action); diff --git a/cloudphone/src/main/cpp/CasController.cpp b/cloudphone/src/main/cpp/CasController.cpp index 02bbf97..0b46d59 100644 --- a/cloudphone/src/main/cpp/CasController.cpp +++ b/cloudphone/src/main/cpp/CasController.cpp @@ -674,9 +674,8 @@ uint64_t CasController::GetLag() return 0; } -bool CasController::SendTouchEvent(int id, int action, int x, int y, int pressure, long time, int orientation, int height, int width) +bool CasController::SendTouchEvent(int id, int action, int x, int y, int pressure) { - int new_time = (int) time; std::lock_guardm1
z)X~;ugJ;xF=Gls m1
z)X~;ugJ;xF=Gls`1r`)moE*e{n#W^$?Zl^VkZ3V;LV#
z;}<9%B19&H1dR1ED(iiKni_Ni?BX1V>;c6Cl1O4Y!NkO!S9_CYQz7BG=_VBV>e>+d
zTyVbP`pq<2QX*c@C>jd#7V6<}us_NXm9!yPVxYv?o+C*tA7EV2bB&lE6vMDEVh+
z=K}K;+}KsAFgMBNx`fwvB6P3uxtd6Vlc(o!GgQ?61B(68ugEXoHy8Zm?07?TlJ`-D
z#F-cwz*M2bLJRkE1Dkka4TqqIojv&Vm%MZhEG?&7*6YCMKvo@7IxIeWA4N9Ch!gtk
zo3x+3RKno{zj^P=pi$6g;J_K46bEQF=QP
zzJ7GO5$WKiyLN)C)|cmAy37Xn9Md{lgFvsMmU6yZD_5aB-tIKues7FDUT~09PeCbY
z9(<3Lyxy}MFS*-}9s}TjFijSeFfUZO>n}%(Shc9KxD$i=1#?Vls7SS3nB=5b4?U^*
zYBpq*-x;$;w?^qT%l14Q!wntYP1M9YpVTMEBosELZ9Fx<7CLH5p@_|%OWpTa7W~{E
zcAL`Ww5nc7na&%4TjhOyxbh^?eBSF4M)puGv+GolPM}``;A53zhJglX(XS36
zZ!nC!RdpSTv7z1CeqKD^!;E!LtGREBt>J2!!NYe(@=u;Q>(px{>Nw~{ms-bLr2N%$
zYXjMxWonjT6ajlm%~rHJB8IzZ!aC07QX^nz=hg=X-X?K`4cFwAf0_?q>YZIbib?}%
zPfpmZ{ f
zC@B&bv#W@v2IV}KW}^2$KD$(S%k1OqUPCTpkhhbo&~5uOLVj;I$sxF56~}1rCjp=r
zX=@auglDK4nr5_AVx`nMSXSJAJ@t1qJQ)-eJSzO@8ys
SAXeQUceXP=#cQTz`1r`)moE*e{n#W^$?Zl^VkZ3V;LV#
z;}<9%B19&H1dR1ED(iiKni_Ni?BX1V>;c6Cl1O4Y!NkO!S9_CYQz7BG=_VBV>e>+d
zTyVbP`pq<2QX*c@C>jd#7V6<}us_NXm9!yPVxYv?o+C*tA7EV2bB&lE6vMDEVh+
z=K}K;+}KsAFgMBNx`fwvB6P3uxtd6Vlc(o!GgQ?61B(68ugEXoHy8Zm?07?TlJ`-D
z#F-cwz*M2bLJRkE1Dkka4TqqIojv&Vm%MZhEG?&7*6YCMKvo@7IxIeWA4N9Ch!gtk
zo3x+