API jembatan JavaScript
Health Connect
Membaca dan menulis langkah, jarak, kalori, detak jantung, tidur, berat badan, dan olahraga melalui Health Connect Android, tepat untuk tipe yang dicentang pada build.
AppMint.health helper#
AppMint.health.isAvailable() / requestPermissions() / read() / write() / openHealthConnect()
Contoh
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.
healthIsAvailable jembatan#
window.WebToApk.healthIsAvailable(callbackId: String)
Status Health Connect untuk aplikasi ini; mengembalikan [callbackId] dengan `{available, status, read, write}`.
Contoh
Didokumentasikan bersama AppMint.health - contoh di sana menunjukkan yang ini juga.
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.
healthOpen jembatan#
window.WebToApk.healthOpen(callbackId: String)
Membuka Health Connect, atau halaman Play Store-nya jika belum terpasang.
Contoh
Didokumentasikan bersama AppMint.health - contoh di sana menunjukkan yang ini juga.
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.
healthRead jembatan#
window.WebToApk.healthRead(type: String, optionsJson: String, callbackId: String)
Membaca catatan [type] (atau total dengan `aggregate:true`) antara `start` dan `end` pada [optionsJson].
Contoh
Didokumentasikan bersama AppMint.health - contoh di sana menunjukkan yang ini juga.
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.
healthRequestPermissions jembatan#
window.WebToApk.healthRequestPermissions(requestJson: String, callbackId: String)
Membuka layar izin Health Connect untuk [requestJson] `{read:[…], write:[…]}`; mengembalikan `{granted, denied}`.
Contoh
Didokumentasikan bersama AppMint.health - contoh di sana menunjukkan yang ini juga.
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.
healthWrite jembatan#
window.WebToApk.healthWrite(type: String, recordsJson: String, callbackId: String)
Menulis catatan di [recordsJson] (sebuah array) sebagai [type]; mengembalikan id-nya.
Contoh
Didokumentasikan bersama AppMint.health - contoh di sana menunjukkan yang ini juga.
Membaca dan menulis data kesehatan pengguna melalui Health Connect: langkah, jarak, kalori aktif, detak jantung, tidur, berat badan, dan sesi olahraga. Aktifkan Data kesehatan (Health Connect) di langkah Akses wizard dan centang tipe serta apakah aplikasi membaca atau menulis tiap tipe - hanya itu yang dapat diminta.
Mengembalikan: setiap metode mengembalikan Promise. isAvailable() → {ok: true, available, status, read, write} (status: available, not_installed, update_required, unsupported = Android di bawah 8.0, disabled = opsi mati). Lainnya → {ok: true, …} atau {ok: false, code, message} dengan code disabled, unsupported, not_installed, update_required, not_declared (tipe tidak dicentang di wizard), permission (pengguna belum memberi izin), bad-input, blocked (halaman dari situs lain), failed. Memerlukan: opsi wizard, Android 8.0+, dan Health Connect (bawaan Android 14+, aplikasi dari Play sebelumnya).
Tipe: steps, distance, calories, heartRate, sleep, weight, exercise. Waktu berupa milidetik (Date.now()), objek Date atau string ISO; jawaban memakai string ISO.
Periksa, lalu minta:
async function connectHealth() {
if (!(window.AppMint && AppMint.health)) return false; // browser or option off
var s = await AppMint.health.isAvailable();
if (s.status === 'not_installed') { await AppMint.health.openHealthConnect(); return false; }
if (!s.available) return false;
var r = await AppMint.health.requestPermissions({ read: ['steps', 'heartRate'], write: ['weight'] });
return r.ok && r.denied.read.length === 0;
}Langkah hari ini (total dengan aggregate: true, catatan itu sendiri tanpanya):
async function stepsToday() {
var start = new Date(); start.setHours(0, 0, 0, 0);
var r = await AppMint.health.read('steps', { start: start, end: new Date(), aggregate: true });
if (!r.ok) { console.warn(r.code, r.message); return 0; }
return r.aggregate.count;
}
async function lastNightHeartRate() {
var end = Date.now(), start = end - 12 * 3600 * 1000;
var r = await AppMint.health.read('heartRate', { start: start, end: end });
// r.records = [{start, end, id, samples: [{time, bpm}]}]
return r.ok ? r.records.flatMap(function (x) { return x.samples; }) : [];
}Tulis - satu catatan atau sebuah array:
await AppMint.health.write('weight', { time: Date.now(), kilograms: 72.4 });
await AppMint.health.write('exercise', [{
start: Date.now() - 45 * 60000, end: Date.now(), exerciseType: 'running', title: 'Evening run'
}]);
await AppMint.health.write('steps', { start: Date.now() - 3600000, end: Date.now(), count: 4200 });Kolom catatan: steps {start, end, count} · distance {start, end, meters} · calories {start, end, kilocalories} · heartRate {start, end, samples: [{time, bpm}]} · sleep {start, end, title?, stages?: [{start, end, stage}]} (awake, sleeping, out_of_bed, light, deep, rem) · weight {time, kilograms} · exercise {start, end, exerciseType, title?} (nama Health Connect seperti running, walking, biking, swimming_pool, yoga, strength_training, other_workout). Agregat: steps {count}, distance {meters}, calories {kilocalories}, heartRate {avg, min, max}, sleep / exercise {minutes}, weight {avg, min, max} (kg).
Catatan: Health Connect menampilkan kebijakan privasi Anda dari layar izinnya - alamat dari langkah Selesai, atau kebijakan yang dibuat otomatis. Sebelum menerbitkan di Google Play, isi Konten aplikasi → Aplikasi kesehatan di Play Console dengan tipe data yang sama dan alasan aplikasi membutuhkan masing-masing; Play meninjau izin kesehatan. Health Connect memberi aplikasi riwayat 30 hari terakhir dari sebelum izin pertamanya. Metode jembatan mentah di baliknya (healthIsAvailable, healthRequestPermissions, healthRead, healthWrite, healthOpen) menerima teks JSON dan id callback - gunakan helper.