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

Side by Side 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2014 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2014 The WebRTC Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 private String keyprefDisableBuiltInAgc; 73 private String keyprefDisableBuiltInAgc;
74 private String keyprefDisableBuiltInNs; 74 private String keyprefDisableBuiltInNs;
75 private String keyprefEnableLevelControl; 75 private String keyprefEnableLevelControl;
76 private String keyprefDisplayHud; 76 private String keyprefDisplayHud;
77 private String keyprefTracing; 77 private String keyprefTracing;
78 private String keyprefRoomServerUrl; 78 private String keyprefRoomServerUrl;
79 private String keyprefRoom; 79 private String keyprefRoom;
80 private String keyprefRoomList; 80 private String keyprefRoomList;
81 private ArrayList<String> roomList; 81 private ArrayList<String> roomList;
82 private ArrayAdapter<String> adapter; 82 private ArrayAdapter<String> adapter;
83 private String keyprefEnableDataChannel;
84 private String keyprefOrdered;
85 private String keyprefMaxRetransmitTimeMs;
86 private String keyprefMaxRetransmits;
87 private String keyprefDataProtocol;
88 private String keyprefNegotiated;
89 private String keyprefDataId;
83 90
84 @Override 91 @Override
85 public void onCreate(Bundle savedInstanceState) { 92 public void onCreate(Bundle savedInstanceState) {
86 super.onCreate(savedInstanceState); 93 super.onCreate(savedInstanceState);
87 94
88 // Get setting keys. 95 // Get setting keys.
89 PreferenceManager.setDefaultValues(this, R.xml.preferences, false); 96 PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
90 sharedPref = PreferenceManager.getDefaultSharedPreferences(this); 97 sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
91 keyprefVideoCallEnabled = getString(R.string.pref_videocall_key); 98 keyprefVideoCallEnabled = getString(R.string.pref_videocall_key);
92 keyprefScreencapture = getString(R.string.pref_screencapture_key); 99 keyprefScreencapture = getString(R.string.pref_screencapture_key);
(...skipping 14 matching lines...) Expand all
107 keyprefOpenSLES = getString(R.string.pref_opensles_key); 114 keyprefOpenSLES = getString(R.string.pref_opensles_key);
108 keyprefDisableBuiltInAec = getString(R.string.pref_disable_built_in_aec_key) ; 115 keyprefDisableBuiltInAec = getString(R.string.pref_disable_built_in_aec_key) ;
109 keyprefDisableBuiltInAgc = getString(R.string.pref_disable_built_in_agc_key) ; 116 keyprefDisableBuiltInAgc = getString(R.string.pref_disable_built_in_agc_key) ;
110 keyprefDisableBuiltInNs = getString(R.string.pref_disable_built_in_ns_key); 117 keyprefDisableBuiltInNs = getString(R.string.pref_disable_built_in_ns_key);
111 keyprefEnableLevelControl = getString(R.string.pref_enable_level_control_key ); 118 keyprefEnableLevelControl = getString(R.string.pref_enable_level_control_key );
112 keyprefDisplayHud = getString(R.string.pref_displayhud_key); 119 keyprefDisplayHud = getString(R.string.pref_displayhud_key);
113 keyprefTracing = getString(R.string.pref_tracing_key); 120 keyprefTracing = getString(R.string.pref_tracing_key);
114 keyprefRoomServerUrl = getString(R.string.pref_room_server_url_key); 121 keyprefRoomServerUrl = getString(R.string.pref_room_server_url_key);
115 keyprefRoom = getString(R.string.pref_room_key); 122 keyprefRoom = getString(R.string.pref_room_key);
116 keyprefRoomList = getString(R.string.pref_room_list_key); 123 keyprefRoomList = getString(R.string.pref_room_list_key);
124 keyprefEnableDataChannel = getString(R.string.pref_enable_datachannel_key);
125 keyprefOrdered = getString(R.string.pref_ordered_key);
126 keyprefMaxRetransmitTimeMs = getString(R.string.pref_max_retransmit_time_ms_ key);
127 keyprefMaxRetransmits = getString(R.string.pref_max_retransmits_key);
128 keyprefDataProtocol = getString(R.string.pref_data_protocol_key);
129 keyprefNegotiated = getString(R.string.pref_negotiated_key);
130 keyprefDataId = getString(R.string.pref_data_id_key);
117 131
118 setContentView(R.layout.activity_connect); 132 setContentView(R.layout.activity_connect);
119 133
120 roomEditText = (EditText) findViewById(R.id.room_edittext); 134 roomEditText = (EditText) findViewById(R.id.room_edittext);
121 roomEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { 135 roomEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
122 @Override 136 @Override
123 public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) { 137 public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
124 if (i == EditorInfo.IME_ACTION_DONE) { 138 if (i == EditorInfo.IME_ACTION_DONE) {
125 addFavoriteButton.performClick(); 139 addFavoriteButton.performClick();
126 return true; 140 return true;
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 int attributeId, String intentName, int defaultId, boolean useFromIntent) { 286 int attributeId, String intentName, int defaultId, boolean useFromIntent) {
273 boolean defaultValue = Boolean.valueOf(getString(defaultId)); 287 boolean defaultValue = Boolean.valueOf(getString(defaultId));
274 if (useFromIntent) { 288 if (useFromIntent) {
275 return getIntent().getBooleanExtra(intentName, defaultValue); 289 return getIntent().getBooleanExtra(intentName, defaultValue);
276 } else { 290 } else {
277 String attributeName = getString(attributeId); 291 String attributeName = getString(attributeId);
278 return sharedPref.getBoolean(attributeName, defaultValue); 292 return sharedPref.getBoolean(attributeName, defaultValue);
279 } 293 }
280 } 294 }
281 295
296 /**
297 * Get a value from the shared preference or from the intent, if it does not
298 * exist the default is used.
299 */
300 private int sharedPrefGetInteger(
301 int attributeId, String intentName, int defaultId, boolean useFromIntent) {
302 String defaultString = getString(defaultId);
303 int defaultValue = Integer.parseInt(defaultString);
304 if (useFromIntent) {
305 return getIntent().getIntExtra(intentName, defaultValue);
306 } else {
307 String attributeName = getString(attributeId);
308 String value = sharedPref.getString(attributeName, defaultString);
309 try {
310 return Integer.parseInt(value);
311 } catch (NumberFormatException e) {
312 Log.e(TAG, "Wrong setting for: " + attributeName + ":" + value);
313 return defaultValue;
314 }
315 }
316 }
317
282 private void connectToRoom(String roomId, boolean commandLineRun, boolean loop back, 318 private void connectToRoom(String roomId, boolean commandLineRun, boolean loop back,
283 boolean useValuesFromIntent, int runTimeMs) { 319 boolean useValuesFromIntent, int runTimeMs) {
284 this.commandLineRun = commandLineRun; 320 this.commandLineRun = commandLineRun;
285 321
286 // roomId is random for loopback. 322 // roomId is random for loopback.
287 if (loopback) { 323 if (loopback) {
288 roomId = Integer.toString((new Random()).nextInt(100000000)); 324 roomId = Integer.toString((new Random()).nextInt(100000000));
289 } 325 }
290 326
291 String roomUrl = sharedPref.getString( 327 String roomUrl = sharedPref.getString(
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
426 } 462 }
427 } 463 }
428 464
429 // Check statistics display option. 465 // Check statistics display option.
430 boolean displayHud = sharedPrefGetBoolean(R.string.pref_displayhud_key, 466 boolean displayHud = sharedPrefGetBoolean(R.string.pref_displayhud_key,
431 CallActivity.EXTRA_DISPLAY_HUD, R.string.pref_displayhud_default, useVal uesFromIntent); 467 CallActivity.EXTRA_DISPLAY_HUD, R.string.pref_displayhud_default, useVal uesFromIntent);
432 468
433 boolean tracing = sharedPrefGetBoolean(R.string.pref_tracing_key, CallActivi ty.EXTRA_TRACING, 469 boolean tracing = sharedPrefGetBoolean(R.string.pref_tracing_key, CallActivi ty.EXTRA_TRACING,
434 R.string.pref_tracing_default, useValuesFromIntent); 470 R.string.pref_tracing_default, useValuesFromIntent);
435 471
472 // Get datachannel options
473 boolean dataChannelEnabled = sharedPrefGetBoolean(R.string.pref_enable_datac hannel_key,
474 CallActivity.EXTRA_DATA_CHANNEL_ENABLED, R.string.pref_enable_datachanne l_default,
475 useValuesFromIntent);
476 boolean ordered = sharedPrefGetBoolean(R.string.pref_ordered_key, CallActivi ty.EXTRA_ORDERED,
477 R.string.pref_ordered_default, useValuesFromIntent);
478 boolean negotiated = sharedPrefGetBoolean(R.string.pref_negotiated_key,
479 CallActivity.EXTRA_NEGOTIATED, R.string.pref_negotiated_default, useValu esFromIntent);
480 int maxRetrMs = sharedPrefGetInteger(R.string.pref_max_retransmit_time_ms_ke y,
481 CallActivity.EXTRA_MAX_RETRANSMITS_MS, R.string.pref_max_retransmit_time _ms_default,
482 useValuesFromIntent);
483 int maxRetr =
484 sharedPrefGetInteger(R.string.pref_max_retransmits_key, CallActivity.EXT RA_MAX_RETRANSMITS,
485 R.string.pref_max_retransmits_default, useValuesFromIntent);
486 int id = sharedPrefGetInteger(R.string.pref_data_id_key, CallActivity.EXTRA_ ID,
487 R.string.pref_data_id_default, useValuesFromIntent);
488 String protocol = sharedPrefGetString(R.string.pref_data_protocol_key,
489 CallActivity.EXTRA_PROTOCOL, R.string.pref_data_protocol_default, useVal uesFromIntent);
490
436 // Start AppRTCMobile activity. 491 // Start AppRTCMobile activity.
437 Log.d(TAG, "Connecting to room " + roomId + " at URL " + roomUrl); 492 Log.d(TAG, "Connecting to room " + roomId + " at URL " + roomUrl);
438 if (validateUrl(roomUrl)) { 493 if (validateUrl(roomUrl)) {
439 Uri uri = Uri.parse(roomUrl); 494 Uri uri = Uri.parse(roomUrl);
440 Intent intent = new Intent(this, CallActivity.class); 495 Intent intent = new Intent(this, CallActivity.class);
441 intent.setData(uri); 496 intent.setData(uri);
442 intent.putExtra(CallActivity.EXTRA_ROOMID, roomId); 497 intent.putExtra(CallActivity.EXTRA_ROOMID, roomId);
443 intent.putExtra(CallActivity.EXTRA_LOOPBACK, loopback); 498 intent.putExtra(CallActivity.EXTRA_LOOPBACK, loopback);
444 intent.putExtra(CallActivity.EXTRA_VIDEO_CALL, videoCallEnabled); 499 intent.putExtra(CallActivity.EXTRA_VIDEO_CALL, videoCallEnabled);
445 intent.putExtra(CallActivity.EXTRA_SCREENCAPTURE, useScreencapture); 500 intent.putExtra(CallActivity.EXTRA_SCREENCAPTURE, useScreencapture);
(...skipping 13 matching lines...) Expand all
459 intent.putExtra(CallActivity.EXTRA_DISABLE_BUILT_IN_AGC, disableBuiltInAGC ); 514 intent.putExtra(CallActivity.EXTRA_DISABLE_BUILT_IN_AGC, disableBuiltInAGC );
460 intent.putExtra(CallActivity.EXTRA_DISABLE_BUILT_IN_NS, disableBuiltInNS); 515 intent.putExtra(CallActivity.EXTRA_DISABLE_BUILT_IN_NS, disableBuiltInNS);
461 intent.putExtra(CallActivity.EXTRA_ENABLE_LEVEL_CONTROL, enableLevelContro l); 516 intent.putExtra(CallActivity.EXTRA_ENABLE_LEVEL_CONTROL, enableLevelContro l);
462 intent.putExtra(CallActivity.EXTRA_AUDIO_BITRATE, audioStartBitrate); 517 intent.putExtra(CallActivity.EXTRA_AUDIO_BITRATE, audioStartBitrate);
463 intent.putExtra(CallActivity.EXTRA_AUDIOCODEC, audioCodec); 518 intent.putExtra(CallActivity.EXTRA_AUDIOCODEC, audioCodec);
464 intent.putExtra(CallActivity.EXTRA_DISPLAY_HUD, displayHud); 519 intent.putExtra(CallActivity.EXTRA_DISPLAY_HUD, displayHud);
465 intent.putExtra(CallActivity.EXTRA_TRACING, tracing); 520 intent.putExtra(CallActivity.EXTRA_TRACING, tracing);
466 intent.putExtra(CallActivity.EXTRA_CMDLINE, commandLineRun); 521 intent.putExtra(CallActivity.EXTRA_CMDLINE, commandLineRun);
467 intent.putExtra(CallActivity.EXTRA_RUNTIME, runTimeMs); 522 intent.putExtra(CallActivity.EXTRA_RUNTIME, runTimeMs);
468 523
524 intent.putExtra(CallActivity.EXTRA_DATA_CHANNEL_ENABLED, dataChannelEnable d);
525
526 if (dataChannelEnabled) {
527 intent.putExtra(CallActivity.EXTRA_ORDERED, ordered);
528 intent.putExtra(CallActivity.EXTRA_MAX_RETRANSMITS_MS, maxRetrMs);
529 intent.putExtra(CallActivity.EXTRA_MAX_RETRANSMITS, maxRetr);
530 intent.putExtra(CallActivity.EXTRA_PROTOCOL, protocol);
531 intent.putExtra(CallActivity.EXTRA_NEGOTIATED, negotiated);
532 intent.putExtra(CallActivity.EXTRA_ID, id);
533 }
534
469 if (useValuesFromIntent) { 535 if (useValuesFromIntent) {
470 if (getIntent().hasExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA)) { 536 if (getIntent().hasExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA)) {
471 String videoFileAsCamera = 537 String videoFileAsCamera =
472 getIntent().getStringExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA ); 538 getIntent().getStringExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA );
473 intent.putExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA, videoFileAsCa mera); 539 intent.putExtra(CallActivity.EXTRA_VIDEO_FILE_AS_CAMERA, videoFileAsCa mera);
474 } 540 }
475 541
476 if (getIntent().hasExtra(CallActivity.EXTRA_SAVE_REMOTE_VIDEO_TO_FILE)) { 542 if (getIntent().hasExtra(CallActivity.EXTRA_SAVE_REMOTE_VIDEO_TO_FILE)) {
477 String saveRemoteVideoToFile = 543 String saveRemoteVideoToFile =
478 getIntent().getStringExtra(CallActivity.EXTRA_SAVE_REMOTE_VIDEO_TO _FILE); 544 getIntent().getStringExtra(CallActivity.EXTRA_SAVE_REMOTE_VIDEO_TO _FILE);
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 } 602 }
537 }; 603 };
538 604
539 private final OnClickListener connectListener = new OnClickListener() { 605 private final OnClickListener connectListener = new OnClickListener() {
540 @Override 606 @Override
541 public void onClick(View view) { 607 public void onClick(View view) {
542 connectToRoom(roomEditText.getText().toString(), false, false, false, 0); 608 connectToRoom(roomEditText.getText().toString(), false, false, false, 0);
543 } 609 }
544 }; 610 };
545 } 611 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698