diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml index c231beac1..85e5e3ced 100644 --- a/src/main/AndroidManifest.xml +++ b/src/main/AndroidManifest.xml @@ -126,6 +126,25 @@ limitations under the License. + + + + + + + + + + + + + diff --git a/src/main/java/de/dennisguse/opentracks/PermissionsRationaleActivity.java b/src/main/java/de/dennisguse/opentracks/PermissionsRationaleActivity.java new file mode 100644 index 000000000..c37c0d773 --- /dev/null +++ b/src/main/java/de/dennisguse/opentracks/PermissionsRationaleActivity.java @@ -0,0 +1,39 @@ +package de.dennisguse.opentracks; + +import android.os.Bundle; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import de.dennisguse.opentracks.databinding.ActivityPermissionsRationaleBinding; +import de.dennisguse.opentracks.ui.util.ViewUtils; + +public class PermissionsRationaleActivity extends AbstractActivity { + + private ActivityPermissionsRationaleBinding viewBinding; + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + setTitle(R.string.health_connect_permissions_rationale_title); + viewBinding.permissionsRationaleAppUrl.setText(getString(R.string.about_url, getString(R.string.app_web_url))); + setSupportActionBar(viewBinding.bottomAppBarLayout.bottomAppBar); + + ViewUtils.makeClickableLinks(findViewById(android.R.id.content)); + } + + @NonNull + @Override + protected View createRootView() { + viewBinding = ActivityPermissionsRationaleBinding.inflate(getLayoutInflater()); + return viewBinding.getRoot(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + viewBinding = null; + } +} diff --git a/src/main/res/layout/activity_permissions_rationale.xml b/src/main/res/layout/activity_permissions_rationale.xml new file mode 100644 index 000000000..962628195 --- /dev/null +++ b/src/main/res/layout/activity_permissions_rationale.xml @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 4cd054a72..0e8f03e12 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -679,6 +679,10 @@ limitations under the License. Hold to stop Export track to storage after recording is finished Instant post-workout export + Health Connect access + How OpenTracks uses Health Connect + OpenTracks only writes finished activities to Health Connect when you explicitly enable Health Connect export in settings. + The requested Health Connect permission allows OpenTracks to export your recorded workouts. You can disable export again at any time in OpenTracks settings. Track export directory Primary