expo-device
expo-device
オープンベータ版ドキュメント:本テクニカルドキュメントは、リリース前のオープンベータ版の一部としてAmazonから提供されるものです。ここで説明されている機能は、Amazonがフィードバックを受け取り、機能の開発を繰り返す過程で変更される可能性があります。最新の機能の情報については、リリースノートを参照してください。
@amazon-devices/expo-deviceは、デバイスのメーカーやモデルなど、物理デバイスに関するシステム情報へのアクセスを提供します。
インストール
- package.jsonファイルにJavaScriptライブラリの依存関係を追加します。
dependencies: { ... "@amazon-devices/expo-device": "~2.0.0", } npm installコマンドを使用して、依存関係を再インストールします。kepler buildコマンドを実行します。
例
import React, {useEffect, useState} from 'react';
import {StyleSheet, View, Text} from 'react-native';
import * as Device from '@amazon-devices/expo-device';
export const App = () => {
const [deviceType, setDeviceType] = useState<Device.DeviceType>();
const [uptime, setUptime] = useState<number>();
useEffect(() => {
Device.getDeviceTypeAsync().then(setDeviceType);
Device.getUptimeAsync().then(setUptime);
}, []);
return (
<View style={styles.container}>
<Text style={styles.text}>manufacturer: {Device.manufacturer}</Text>
<Text style={styles.text}>modelName: {Device.modelName}</Text>
<Text style={styles.text}>
is TV: {String(deviceType === Device.DeviceType.TV)}
</Text>
<Text style={styles.text}>uptime: {uptime}</Text>
</View>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: 'white',
justifyContent: 'center',
alignItems: 'center',
},
text: {
fontSize: 30,
color: 'black',
},
});
APIリファレンス
このライブラリの情報、APIリファレンス、その他の詳細については、 Expo公式ドキュメントのexpo-deviceのページ(英語のみ)を参照してください。
定数
| 名前 | 型 | 説明 |
|---|---|---|
Device.brand |
string | null |
デバイスのブランド。消費者に認識される製品/ハードウェアのブランドです。ウェブとVegaでは、この値は常にnullになります。 |
Device.designName |
string | null |
工業デザインの固有の構成または名前。製造から量産の段階で設計されたときのデバイスの名前を表します。ウェブとVegaでは、この値は常にnullになります。 |
Device.deviceName |
string | null |
人が判読できる形式のデバイスの名前。デバイスのユーザーが設定できます。デバイス名を利用できない場合、特にウェブやVegaでは、この値はnullになります。 |
Device.deviceType |
DeviceType | null |
デバイスのタイプをDeviceType列挙値として示します。 |
Device.deviceYearClass |
number | null |
このデバイスの製造年クラス。ウェブとVegaでは、この値は常にnullになります。 |
Device.manufacturer |
string | null |
製品またはハードウェアの実際のデバイスメーカー。特定できない場合はnullになります。 |
Device.modelName |
string | null |
デバイスモデルの通称。これは通常、プログラム上のモデル識別子ではなく、デバイスを指すときに一般的に使用される名前です。特定できない場合はnullになります。 |
Device.osBuildFingerprint |
string | null |
現在実行されているシステムOSのビルドを一意に識別する文字列。 |
Device.osBuildId |
string | null |
OSのビルドID。OSのバージョンをより正確に識別します。ウェブでは、この値は常にnullになります。 |
Device.osInternalBuildId |
string | null |
デバイスで実行されているOSの内部ビルドID。ウェブでは、この値は常にnullになります。 |
Device.osName |
string | null |
デバイスで実行されているOSの名前。 |
Device.osVersion |
string | null |
人が判読できる形式のOSバージョン文字列。バージョン文字列には、常にドット区切りの3つの数字が含まれているとは限りません。 |
Device.productName |
string | null |
デバイスの開発名またはコードネームを含む、デバイス実装者によって選択されたデバイスの製品名全体。Build.PRODUCTに相当します。ウェブでは、この値は常にnullになります。 |
Device.supportedCpuArchitectures |
string[] | null |
サポート対象のプロセッサアーキテクチャバージョンのリスト。デバイスで実行されるバイナリは、これらのアーキテクチャのいずれかをターゲットとしてコンパイルされるものと想定されています。サポート対象のアーキテクチャを特定できなかった場合、特にウェブでは、この値はnullになります。 |
Device.totalMemory |
number | null |
デバイスの合計メモリ(バイト単位)。これはカーネルがアクセスできるメモリの合計量ですが、必ずしも単一のアプリからアクセスできるとは限りません。基本的にデバイスに搭載されているRAMの量を表し、DMAバッファーやベースバンドCPUのRAMなど、カーネルよりも下層の固定割り当ては含まれません。ウェブおよびVegaでは、この値は常にnullになります。 |
メソッド
| 名前 | 型 | 説明 |
|---|---|---|
Device.getDeviceTypeAsync() |
Promise<DeviceType> |
デバイスのタイプをDeviceType列挙値として確認します。 |
Device.getUptimeAsync() |
Promise<number> |
デバイスが最後に再起動されてからの稼働時間をミリ秒単位で取得します。 |
列挙型
DeviceType
| 名前 | 値 | 説明 |
|---|---|---|
UNKNOWN |
DeviceType.UNKNOWN = 0 |
認識できないデバイスタイプ。 |
PHONE |
DeviceType.PHONE = 1 |
携帯電話機。通常はタッチスクリーンが搭載され、片手で持ちます。 |
TABLET |
DeviceType.TABLET = 2 |
タブレットコンピューター。通常、一般的な電話よりも大きいタッチスクリーンが搭載されています。 |
DESKTOP |
DeviceType.DESKTOP = 3 |
デスクトップコンピューターまたはノートパソコン。通常はキーボードとマウスが搭載されています。 |
TV |
DeviceType.TV = 4 |
TVベースのインターフェイスを備えたデバイス。 |
エラーコード
| コード | 説明 |
|---|---|
ERR_DEVICE_ROOT_DETECTION |
isRootedExperimentalAsyncでスローされるエラーコード。特定のシステムファイルへの読み取りアクセス権がない場合にスローされることがあります。 |
実装の詳細
Device.deviceTypeとDevice.getDeviceTypeAsync()-UNKNOWNまたはTVを返します。Device.totalMemory- nullを返します。
VegaでサポートされないAPI:
Device.brandDevice.designNameDevice.deviceNameDevice.deviceYearClassDevice.isRootedExperimentalAsync()
サポートされているバージョン
| パッケージのバージョン | ベース | @amazon-devices/react-native-kepler version |
|---|---|---|
| 2.0.x | 5.8.0 | 2.0.x |
関連リソース
その他のライブラリについては、サポート対象のサードパーティのライブラリとサービスを参照してください。
Last updated: 2025年9月30日

