メインコンテンツへスキップ

Platform


リファレンス

プロパティ

constants

tsx
static constants: PlatformConstants;

プラットフォームに関連する利用可能なすべての共通定数と特定定数を含むオブジェクトを返します。

プロパティ

名前
任意説明
isTestingbooleanNo
reactNativeVersionobjectNoReact Nativeのバージョン情報。キーはmajorminorpatch(オプションのprerelease付き)で、値はnumberです。
Version
Android
numberNoAndroidに特化したOSバージョン定数。
Release
Android
stringNo
Serial
Android
stringNoAndroidデバイスのハードウェアシリアル番号。
Fingerprint
Android
stringNoビルドを一意に識別する文字列。
Model
Android
stringNoAndroidデバイスのエンドユーザー向けの名前。
Brand
Android
stringNo製品/ハードウェアが関連付けられる、消費者向けのブランド。
Manufacturer
Android
stringNoAndroidデバイスの製造元。
ServerHost
Android
stringはい
uiMode
Android
stringNo取りうる値は: 'car''desk''normal''tv''watch''unknown'です。 Android ModeTypeについて詳しくはこちらをご覧ください。
forceTouchAvailable
iOS
booleanNoデバイスでの3D Touchの利用可能性を示します。
interfaceIdiom
iOS
stringNoデバイスのインターフェースタイプ。 UIUserInterfaceIdiomについて詳しくはこちらをご覧ください。
osVersion
iOS
stringNoiOSに特化したOSバージョン定数。
systemName
iOS
stringNoiOSに特化したOS名定数。

isPad
iOS

tsx
static isPad: boolean;

デバイスがiPadであるかを定義するブール値を返します。

boolean

isTV

tsx
static isTV: boolean;

デバイスがTVであるかを定義するブール値を返します。

boolean

isVision

tsx
static isVision: boolean;

デバイスがApple Visionであるかを定義するブール値を返します。 Apple Vision Pro (Designed for iPad)を使用している場合、isVisionfalseになりますが、isPadtrueになります

boolean

isTesting

tsx
static isTesting: boolean;

アプリケーションがテストフラグが設定された開発者モードで実行されているかを定義するブール値を返します。

boolean

OS

tsx
static OS: 'android' | 'ios';

現在のOSを表す文字列値を返します。

enum('android', 'ios')

Version

tsx
static Version: 'number' | 'string';

OSのバージョンを返します。

number
Android

string
iOS

Methods

select()

tsx
static select(config: Record<string, T>): T;

現在実行中のプラットフォームに最適な値を返します。

パラメータ:

名前必須説明
configobjectはい以下の設定の説明をご覧ください。

Selectメソッドは、現在実行中のプラットフォームに最適な値を返します。つまり、スマートフォンで実行している場合、androidiosのキーが優先されます。これらが指定されていない場合、nativeキーが使用され、次にdefaultキーが使用されます。

configパラメータは、以下のキーを持つオブジェクトです。

  • android (任意)
  • ios (任意)
  • native (任意)
  • default (任意)

使用例

tsx
import {Platform, StyleSheet} from 'react-native';

const styles = StyleSheet.create({
container: {
flex: 1,
...Platform.select({
android: {
backgroundColor: 'green',
},
ios: {
backgroundColor: 'red',
},
default: {
// other platforms, web for example
backgroundColor: 'blue',
},
}),
},
});

これにより、コンテナはすべてのプラットフォームでflex: 1となり、Androidでは緑色の背景色、iOSでは赤色の背景色、その他のプラットフォームでは青色の背景色になります。

対応するプラットフォームキーの値はany型である可能性があるため、selectメソッドは以下のようにプラットフォーム固有のコンポーネントを返すためにも使用できます。

tsx
const Component = Platform.select({
ios: () => require('ComponentIOS'),
android: () => require('ComponentAndroid'),
})();

<Component />;
tsx
const Component = Platform.select({
native: () => require('ComponentForNative'),
default: () => require('ComponentForWeb'),
})();

<Component />;