diff --git a/MyTracks/res/values/strings.xml b/MyTracks/res/values/strings.xml
index 0da53bda1..a9f64db89 100644
--- a/MyTracks/res/values/strings.xml
+++ b/MyTracks/res/values/strings.xml
@@ -240,6 +240,8 @@ limitations under the License.
MyTracks data, including starting/stopping a recording.
MyTracks data is not shared with any installed app.
+ Are you sure? This will allow any app installed
+ on your phone control and access to MyTracks.
Share only URL
Only the URL of the map will be sent when sharing
diff --git a/MyTracks/src/com/google/android/apps/mytracks/SettingsActivity.java b/MyTracks/src/com/google/android/apps/mytracks/SettingsActivity.java
index 559d9af31..f3a974ae8 100644
--- a/MyTracks/src/com/google/android/apps/mytracks/SettingsActivity.java
+++ b/MyTracks/src/com/google/android/apps/mytracks/SettingsActivity.java
@@ -142,6 +142,33 @@ public class SettingsActivity extends PreferenceActivity {
return true;
}
});
+
+ // Add a confirmation dialog for the share data preference.
+ final CheckBoxPreference shareDataPreference = (CheckBoxPreference) findPreference(
+ getString(R.string.share_data_key));
+ shareDataPreference.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ if ((Boolean) newValue) {
+ AlertDialog dialog = new AlertDialog.Builder(SettingsActivity.this)
+ .setCancelable(true)
+ .setTitle(getString(R.string.settings_share_data))
+ .setMessage(getString(R.string.settings_share_data_dialog_message))
+ .setPositiveButton(android.R.string.ok, new OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialogInterface, int button) {
+ shareDataPreference.setChecked(true);
+ }
+ })
+ .setNegativeButton(android.R.string.cancel, null)
+ .create();
+ dialog.show();
+ return false;
+ } else {
+ return true;
+ }
+ }
+ });
}
private boolean processIntent() {