diff --git a/talk/examples/android/res/values/arrays.xml b/talk/examples/android/res/values/arrays.xml index 3127a85970..30159ba79e 100644 --- a/talk/examples/android/res/values/arrays.xml +++ b/talk/examples/android/res/values/arrays.xml @@ -6,6 +6,7 @@ VGA (640 x 480) QVGA (320 x 240) + Default 1280 x 720 @@ -18,5 +19,4 @@ 30 fps 15 fps - diff --git a/talk/examples/android/res/values/strings.xml b/talk/examples/android/res/values/strings.xml index 2a1d64ab36..774eee1c94 100644 --- a/talk/examples/android/res/values/strings.xml +++ b/talk/examples/android/res/values/strings.xml @@ -29,19 +29,23 @@ url_preference Connection URL: - AppRTC connection server URL. Enter AppRTC connection server URL. https://apprtc.appspot.com resolution_preference Video resolution. - Video resolution. Enter AppRTC local video resolution. Default fps_preference Camera fps. - Camera fps. Enter local camera fps. Default + + cpu_usage_detection + CPU overuse detection. + Adapt transmission to CPU status. + true + Enabled + Disabled diff --git a/talk/examples/android/res/xml/preferences.xml b/talk/examples/android/res/xml/preferences.xml index f3f91d87c9..b8c08bbecf 100644 --- a/talk/examples/android/res/xml/preferences.xml +++ b/talk/examples/android/res/xml/preferences.xml @@ -3,14 +3,12 @@ - \ No newline at end of file + + + diff --git a/talk/examples/android/src/org/appspot/apprtc/ConnectActivity.java b/talk/examples/android/src/org/appspot/apprtc/ConnectActivity.java index 8f00c1c815..ce99bbf33e 100644 --- a/talk/examples/android/src/org/appspot/apprtc/ConnectActivity.java +++ b/talk/examples/android/src/org/appspot/apprtc/ConnectActivity.java @@ -73,6 +73,7 @@ public class ConnectActivity extends Activity { private String keyprefUrl; private String keyprefResolution; private String keyprefFps; + private String keyprefCpuUsageDetection; private String keyprefRoom; private String keyprefRoomList; private ArrayList roomList; @@ -88,6 +89,7 @@ public class ConnectActivity extends Activity { keyprefUrl = getString(R.string.pref_url_key); keyprefResolution = getString(R.string.pref_resolution_key); keyprefFps = getString(R.string.pref_fps_key); + keyprefCpuUsageDetection = getString(R.string.pref_cpu_usage_detection_key); keyprefRoom = getString(R.string.pref_room_key); keyprefRoomList = getString(R.string.pref_room_list_key); @@ -252,6 +254,14 @@ public class ConnectActivity extends Activity { url += "&hd=true"; } } + // Test if CpuOveruseDetection should be disabled. By default is on. + boolean cpuOveruseDetection = sharedPref.getBoolean( + keyprefCpuUsageDetection, + Boolean.valueOf( + getString(R.string.pref_cpu_usage_detection_default))); + if (!cpuOveruseDetection) { + url += "&googCpuOveruseDetection=false"; + } // TODO(kjellander): Add support for custom parameters to the URL. connectToRoom(url); } diff --git a/talk/examples/android/src/org/appspot/apprtc/SettingsActivity.java b/talk/examples/android/src/org/appspot/apprtc/SettingsActivity.java index 2354ceb4aa..eccb67ed2d 100644 --- a/talk/examples/android/src/org/appspot/apprtc/SettingsActivity.java +++ b/talk/examples/android/src/org/appspot/apprtc/SettingsActivity.java @@ -39,6 +39,7 @@ public class SettingsActivity extends Activity private String keyprefUrl; private String keyprefResolution; private String keyprefFps; + private String keyprefCpuUsageDetection; @Override protected void onCreate(Bundle savedInstanceState) { @@ -46,6 +47,7 @@ public class SettingsActivity extends Activity keyprefUrl = getString(R.string.pref_url_key); keyprefResolution = getString(R.string.pref_resolution_key); keyprefFps = getString(R.string.pref_fps_key); + keyprefCpuUsageDetection = getString(R.string.pref_cpu_usage_detection_key); // Display the fragment as the main content. settingsFragment = new SettingsFragment(); @@ -64,6 +66,7 @@ public class SettingsActivity extends Activity updateSummary(sharedPreferences, keyprefUrl); updateSummary(sharedPreferences, keyprefResolution); updateSummary(sharedPreferences, keyprefFps); + updateSummaryB(sharedPreferences, keyprefCpuUsageDetection); } @Override @@ -80,6 +83,8 @@ public class SettingsActivity extends Activity if (key.equals(keyprefUrl) || key.equals(keyprefResolution) || key.equals(keyprefFps)) { updateSummary(sharedPreferences, key); + } else if (key.equals(keyprefCpuUsageDetection)) { + updateSummaryB(sharedPreferences, key); } } @@ -89,4 +94,11 @@ public class SettingsActivity extends Activity updatedPref.setSummary(sharedPreferences.getString(key, "")); } + private void updateSummaryB(SharedPreferences sharedPreferences, String key) { + Preference updatedPref = settingsFragment.findPreference(key); + updatedPref.setSummary(sharedPreferences.getBoolean(key, true) + ? getString(R.string.pref_cpu_usage_detection_on) + : getString(R.string.pref_cpu_usage_detection_off)); + } + }