as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート

expo-device

expo-device

@amazon-devices/expo-deviceは、デバイスのメーカーやモデルなど、物理デバイスに関するシステム情報へのアクセスを提供します。

インストール

  1. package.jsonファイルにJavaScriptライブラリの依存関係を追加します。

    クリップボードにコピーしました。

     dependencies: {
         ...
         "@amazon-devices/expo-device": "~2.0.0",
     }
    
  2. npm installコマンドを使用して、依存関係を再インストールします。
  3. 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.deviceTypeDevice.getDeviceTypeAsync() - UNKNOWNまたはTVを返します。
  • Device.totalMemory - nullを返します。

VegaでサポートされないAPI:

  • Device.brand
  • Device.designName
  • Device.deviceName
  • Device.deviceYearClass
  • Device.isRootedExperimentalAsync()

サポートされているバージョン

パッケージのバージョン ベース @amazon-devices/react-native-kepler version
2.0.x 5.8.0 2.0.x

関連リソース

その他のライブラリについては、サポート対象のサードパーティのライブラリとサービスを参照してください。


Last updated: 2025年9月30日