Panduan
Cara menggunakan Device Info di Capacitor
Menggunakan @capgo/capacitor-device-info
Baca metrik CPU, memori, GPU, storage, thermal, low-power, dan sensor onboard dari aplikasi Capacitor.
Kompatibilitas
Plugin ini memerlukan Capacitor 8 atau lebih baru (@capacitor/core >=8.0.0).
Instal
npm install @capgo/capacitor-device-info
npx cap sync
Yang disediakan plugin ini
getInfo- Baca satu snapshot berisi CPU, memori, GPU, storage, thermal state, low-power mode, dan sensor onboard.startMonitoring- Jalankan snapshot berkala untuk chart dan dashboard diagnostik.stopMonitoring- Hentikan stream yang sedang aktif.isMonitoring- Cek status stream dan jumlah sample yang dihasilkan.removeAllListeners- Hapus semua listener yang terdaftar pada plugin.deviceInfoUpdate- Event listener yang dikirim untuk setiap sample berkala.
Contoh penggunaan
import { DeviceInfo } from '@capgo/capacitor-device-info';
const snapshot = await DeviceInfo.getInfo();
console.log(snapshot.cpu.cores);
console.log(snapshot.memory.usedPercent);
console.log(snapshot.gpu?.renderer);
console.log(snapshot.sensors?.pressureHpa);
Stream metrik ke dalam chart
import { DeviceInfo } from '@capgo/capacitor-device-info';
const samples: number[] = [];
const handle = await DeviceInfo.addListener('deviceInfoUpdate', (sample) => {
if (typeof sample.cpu.usagePercent === 'number') {
samples.push(sample.cpu.usagePercent);
}
});
await DeviceInfo.startMonitoring({
intervalMs: 1000,
emitImmediately: true,
});
// Later:
await DeviceInfo.stopMonitoring();
await handle.remove();
Monitoring secara default menggunakan interval 1000 ms, membatasi interval di bawah 250 ms, dan mengirim sample instan kecuali Anda mengatur emitImmediately: false. Memanggil startMonitoring() lagi akan memulai ulang sesi aktif dengan opsi baru. Setiap event menyertakan sequence, startedAt, dan elapsedMs.
Gunakan durationMs atau sampleCount untuk berhenti otomatis. Jika Anda tidak lagi membutuhkan listener, panggil await DeviceInfo.removeAllListeners().
Catatan sensor Onboard
Pembacaan sensor bersifat opsional karena perangkat mengekspos hardware yang berbeda. Android dapat melaporkan suhu baterai, suhu lingkungan, kelembapan, tekanan barometrik, cahaya, proximity, dan nilai thermal-zone CPU/GPU best-effort jika tersedia. iOS melaporkan ketersediaan sensor CoreMotion, thermal state, dan low-power state, tetapi API publik iOS tidak mengekspos suhu mentah CPU atau GPU.
Plugin ini tidak mengambil data cuaca. Suhu luar dan kelembapan memerlukan integrasi lokasi dan cuaca API terpisah.
Referensi lengkap
Lanjut terus
Jika Anda menggunakan @capgo/capacitor-device-info untuk membuat layar diagnostik atau monitoring, hubungkan dengan @capgo/capacitor-device-info untuk ringkasan, Panduan Memulai untuk instalasi dan contoh API Menggunakan @capgo/capacitor-barometer untuk streaming tekanan khusus, dan Menggunakan @capgo/capacitor-light-sensor untuk pembacaan cahaya khusus.