Код: Выделить всё
Но я все еще не могу получить доступ к данным о здоровье старше 30 дней.
Я попытался добавить код запроса на данный запрос на данные в файле MainActivity:
private static final String PERMISSION_READ_HEALTH_DATA_HISTORY = "android.permission.READ_HEALTH_DATA_HISTORY";
private static final String TAG = "PermissionRequest";
KClass stepsRecordKClass = JvmClassMappingKt.getKotlinClass(StepsRecord.class);
KClass sleepRecordKClass = JvmClassMappingKt.getKotlinClass(SleepSessionRecord.class);
KClass distanceRecordKClass = JvmClassMappingKt.getKotlinClass(DistanceRecord.class);
private ActivityResultLauncher requestPermissionActivityContract;
Set PERMISSIONS = new HashSet() {{
add(HealthPermission.getReadPermission(stepsRecordKClass));
add(HealthPermission.getReadPermission(sleepRecordKClass));
add(HealthPermission.getReadPermission(distanceRecordKClass));
}};
@Override
protected String getMainComponentName() {
return "KuntoResearch";
}
public void requestHealthDataHistoryPermission() {
ActivityResultLauncher requestPermissionLauncher =
this.registerForActivityResult(
new ActivityResultContracts.RequestPermission(),
new ActivityResultCallback() {
@Override
public void onActivityResult(Boolean isGranted) {
if (isGranted != null && isGranted) {
Log.d(TAG, "Permission granted");
// You can now access historic health data
} else {
Log.d(TAG, "Permission denied");
// You may want to show UI explaining why the permission is needed
}
}
});
// Launch permission request
requestPermissionLauncher.launch(PERMISSION_READ_HEALTH_DATA_HISTORY);
}
< /code>
Но я не получал никакого всплывающего окна для того, чтобы спросить это разрешение. Кроме того, я пытался обновить зависимость до версии Alpha11, но есть много изменений, касающихся версий Gradle, и все так не могу обновить мою зависимость, так как это повлияет на может повлиять на другой код.
Подробнее здесь: https://stackoverflow.com/questions/795 ... th-connect
Мобильная версия