Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2340)

Unified Diff: webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java

Issue 2464243002: Add Datachannel support to Android AppRTCMobile (Closed)
Patch Set: restore videoCapturerStopped = true Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java
diff --git a/webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java b/webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java
index 8d1668894d2a08c4ce3ea2ad14a4fc5d6111af48..4514503d7dc7c55c28dc5d1d0e0dc24b830cba3f 100644
--- a/webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java
+++ b/webrtc/examples/androidapp/src/org/appspot/apprtc/ConnectActivity.java
@@ -80,6 +80,13 @@ public class ConnectActivity extends Activity {
private String keyprefRoomList;
private ArrayList<String> roomList;
private ArrayAdapter<String> adapter;
+ private String keyprefEnableDataChannel;
+ private String keyprefOrdered;
+ private String keyprefMaxRetransmitTimeMs;
+ private String keyprefMaxRetransmits;
+ private String keyprefDataProtocol;
+ private String keyprefNegotiated;
+ private String keyprefDataId;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -114,6 +121,13 @@ public class ConnectActivity extends Activity {
keyprefRoomServerUrl = getString(R.string.pref_room_server_url_key);
keyprefRoom = getString(R.string.pref_room_key);
keyprefRoomList = getString(R.string.pref_room_list_key);
+ keyprefEnableDataChannel = getString(R.string.pref_enable_datachannel_key);
+ keyprefOrdered = getString(R.string.pref_ordered_key);
+ keyprefMaxRetransmitTimeMs = getString(R.string.pref_max_retransmit_time_ms_key);
+ keyprefMaxRetransmits = getString(R.string.pref_max_retransmits_key);
+ keyprefDataProtocol = getString(R.string.pref_data_protocol_key);
+ keyprefNegotiated = getString(R.string.pref_negotiated_key);
+ keyprefDataId = getString(R.string.pref_data_id_key);
setContentView(R.layout.activity_connect);
@@ -279,6 +293,28 @@ public class ConnectActivity extends Activity {
}
}
+ /**
+ * Get a value from the shared preference or from the intent, if it does not
+ * exist the default is used.
+ */
+ private int sharedPrefGetInteger(
+ int attributeId, String intentName, int defaultId, boolean useFromIntent) {
+ String defaultString = getString(defaultId);
+ int defaultValue = Integer.parseInt(defaultString);
+ if (useFromIntent) {
+ return getIntent().getIntExtra(intentName, defaultValue);
+ } else {
+ String attributeName = getString(attributeId);
+ String value = sharedPref.getString(attributeName, defaultString);
+ try {
+ return Integer.parseInt(value);
+ } catch (NumberFormatException e) {
+ Log.e(TAG, "Wrong setting for: " + attributeName + ":" + value);
+ return defaultValue;
+ }
+ }
+ }
+
private void connectToRoom(String roomId, boolean commandLineRun, boolean loopback,
boolean useValuesFromIntent, int runTimeMs) {
this.commandLineRun = commandLineRun;
@@ -433,6 +469,25 @@ public class ConnectActivity extends Activity {
boolean tracing = sharedPrefGetBoolean(R.string.pref_tracing_key, CallActivity.EXTRA_TRACING,
R.string.pref_tracing_default, useValuesFromIntent);
+ // Get datachannel options
+ boolean dataChannelEnabled = sharedPrefGetBoolean(R.string.pref_enable_datachannel_key,
+ CallActivity.EXTRA_DATA_CHANNEL_ENABLED, R.string.pref_enable_datachannel_default,
+ useValuesFromIntent);
+ boolean ordered = sharedPrefGetBoolean(R.string.pref_ordered_key, CallActivity.EXTRA_ORDERED,
+ R.string.pref_ordered_default, useValuesFromIntent);
+ boolean negotiated = sharedPrefGetBoolean(R.string.pref_negotiated_key,
+ CallActivity.EXTRA_NEGOTIATED, R.string.pref_negotiated_default, useValuesFromIntent);
+ int maxRetrMs = sharedPrefGetInteger(R.string.pref_max_retransmit_time_ms_key,
+ CallActivity.EXTRA_MAX_RETRANSMITS_MS, R.string.pref_max_retransmit_time_ms_default,
+ useValuesFromIntent);
+ int maxRetr =
+ sharedPrefGetInteger(R.string.pref_max_retransmits_key, CallActivity.EXTRA_MAX_RETRANSMITS,
+ R.string.pref_max_retransmits_default, useValuesFromIntent);
+ int id = sharedPrefGetInteger(R.string.pref_data_id_key, CallActivity.EXTRA_ID,
+ R.string.pref_data_id_default, useValuesFromIntent);
+ String protocol = sharedPrefGetString(R.string.pref_data_protocol_key,
+ CallActivity.EXTRA_PROTOCOL, R.string.pref_data_protocol_default, useValuesFromIntent);
+
// Start AppRTCMobile activity.
Log.d(TAG, "Connecting to room " + roomId + " at URL " + roomUrl);
if (validateUrl(roomUrl)) {
@@ -466,6 +521,17 @@ public class ConnectActivity extends Activity {
intent.putExtra(CallActivity.EXTRA_CMDLINE, commandLineRun);
intent.putExtra(CallActivity.EXTRA_RUNTIME, runTimeMs);
+ intent.putExtra(CallActivity.EXTRA_DATA_CHANNEL_ENABLED, dataChannelEnabled);
+
+ if (dataChannelEnabled) {
+ intent.putExtra(CallActivity.EXTRA_ORDERED, ordered);
+ intent.putExtra(CallActivity.EXTRA_MAX_RETRANSMITS_MS, maxRetrMs);
+ intent.putExtra(CallActivity.EXTRA_MAX_RETRANSMITS, maxRetr);
+ intent.putExtra(CallActivity.EXTRA_PROTOCOL, protocol);
+ intent.putExtra(CallActivity.EXTRA_NEGOTIATED, negotiated);
+ intent.putExtra(CallActivity.EXTRA_ID, id);
+ }
+
if (useValuesFromIntent) {
if (getIntent().hasExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA)) {
String videoFileAsCamera =

Powered by Google App Engine
This is Rietveld 408576698