@amazon-devices/kepler-file-system
KeplerファイルシステムAPIは、Keplerでファイルシステムの照会、トラバース、読み取り、書き込みの操作を実行するための機能を提供します。
注釈
アプリは、デバイスファイルシステムの表示に制限があるサンドボックス環境で動作します。Keplerにより、サンドボックスで以下のアプリ固有のディレクトリが利用できるようになります。
| パス | 書き込みの可否 | 説明 |
|---|---|---|
/pkg |
× | アプリパッケージのルート。 |
/pkg/assets |
× | パッケージによってインストールされたアセット。 |
/pkg/lib |
× | アプリのエントリポイントコンポーネントと、パッケージによってインストールされた追加ライブラリ。 |
/data |
○ | アプリデータ用の書き込み可能な場所。デバイスの再起動後やパッケージのアップグレード後も保持されますが、アプリやサービス間で共有されることはありません。このディレクトリは、アプリのアンインストール後は保持されません。 |
/tmp |
○ | 各アプリに独自の一時ストレージがあり、ほかのアプリやサービスとは共有できません。永続的ではなく、デバイスの再起動時に削除されます。 |
/proc |
× | アプリでは/proc/selfのみを参照できます。 |
開始の手順
セットアップ
-
package.jsonファイルの
dependenciesセクションに、以下のライブラリ依存関係を追加します。"@amazon-devices/kepler-file-system": "~0.0.1" -
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日

