The Health Connect permission view does not open on API < 34. It doesn't crash, if I click the button nothing happens. What is the problem?
val permissionRequestContract = PermissionController.createRequestPermissionResultContract()
val permissionsLauncher =
rememberLauncherForActivityResult(
contract = permissionRequestContract
) {
....
}
Permissions are granted:
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.health.READ_STEPS" />
<uses-permission android:name="android.permission.health.READ_WEIGHT" />
<uses-permission android:name="android.permission.health.READ_BODY_TEMPERATURE" />
<queries>
<package android:name="com.google.android.apps.healthdata" />
</queries>
</manifest>
Launched:
Button(
onClick = {
permissionsLauncher.launch(REQUIRED_PERMISSIONS)
},
) {
...
}
Permissions:
val REQUIRED_PERMISSIONS = setOf(
HealthPermission.getReadPermission(BodyTemperatureRecord::class),
HealthPermission.getReadPermission(StepsRecord::class),
HealthPermission.getReadPermission(WeightRecord::class)
)
Go to AndroidManifest.xml and make sure that the relevant activity has the following intent-filter added:
<intent-filter>
<action android:name="androidx.health.ACTION_SHOW_PERMISSIONS_RATIONALE"/>
<category android:name="android.intent.category.HEALTH_PERMISSIONS"/>
</intent-filter>