as

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

@amazon-devices/kepler-file-system

@amazon-devices/kepler-file-system

KeplerファイルシステムAPIは、Keplerでファイルシステムの照会、トラバース、読み取り、書き込みの操作を実行するための機能を提供します。

注釈

アプリは、デバイスファイルシステムの表示に制限があるサンドボックス環境で動作します。Keplerにより、サンドボックスで以下のアプリ固有のディレクトリが利用できるようになります。

パス 書き込みの可否 説明
/pkg × アプリパッケージのルート。
/pkg/assets × パッケージによってインストールされたアセット。
/pkg/lib × アプリのエントリポイントコンポーネントと、パッケージによってインストールされた追加ライブラリ。
/data アプリデータ用の書き込み可能な場所。デバイスの再起動後やパッケージのアップグレード後も保持されますが、アプリやサービス間で共有されることはありません。このディレクトリは、アプリのアンインストール後は保持されません。
/tmp 各アプリに独自の一時ストレージがあり、ほかのアプリやサービスとは共有できません。永続的ではなく、デバイスの再起動時に削除されます。
/proc × アプリでは/proc/selfのみを参照できます。

開始の手順

セットアップ

  1. package.jsonファイルのdependenciesセクションに、以下のライブラリ依存関係を追加します。

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

     "@amazon-devices/kepler-file-system": "~0.0.1"
    
  2. npm installコマンドを使用して、package-lock.jsonファイルを再生成します。

使用方法

以下の例では、async/awaitを使用して、FileSystemのメソッドによって返されるPromiseを処理しています。このパターンでは、非同期操作をより簡潔に処理できます。

ファイルを開く

この例では、async/awaitを使用して、FileSystem.openFile()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleOpenFile = async () => {
  FileSystem.openFile('/data/fileSystemTestFile', 0)
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ファイルを削除する

この例では、async/awaitを使用して、FileSystem.removeFile()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleRemoveFile = async () => {
  FileSystem.removeFile('/data/fileSystemTestFile')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ディレクトリを削除する

この例では、async/awaitを使用して、FileSystem.removeDir()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleRemoveDir = async () => {
  FileSystem.removeDir('/data')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ディレクトリを再帰的に削除する

この例では、async/awaitを使用して、FileSystem.removeDirAll()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleRemoveDirAll = async () => {
  FileSystem.removeDirAll('/data')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ファイルを文字列として読み取る

この例では、async/awaitを使用して、FileSystem.readFileAsString()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleReadFileAsString = async () => {
  FileSystem.readFileAsString('/data/fileToReadWrite', 'UTF-8')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

文字列をファイルに書き込む

この例では、async/awaitを使用して、FileSystem.writeStringToFile()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleWriteStringToFile = async () => {
  FileSystem.writeStringToFile('/data/fileToReadWrite', 'Hello world!', 'UTF-8')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ファイルのメタデータにアクセスする

この例では、async/awaitを使用して、FileSystem.getMetadata()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

export const handleGetMetadata = async () => {
  FileSystem.getMetadata('/data/fileSystemTestFile', false)
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

ディレクトリエントリにアクセスする

この例では、async/awaitを使用して、FileSystem.getEntries()によって返されるPromiseを処理しています。

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

import { KeplerFileSystem as FileSystem } from '@amazon-devices/kepler-file-system';

const handleGetEntries = async () => {
  FileSystem.getEntries('/data')
    .then((response: any) => console.log(response))
    .catch((error: any) => console.error(error));
};

モジュール


Last updated: 2025年10月2日