ファイル転送

概要

デスクトップで Spck CLI を実行すると、デスクトップのファイルシステムとスマートフォンに保存されているローカルプロジェクトの間の同期ハブとして機能します。両側が Spck Editor のファイルマネージャーに並んで表示され、スマートフォンのローカルプロジェクトが左側に、デスクトップのファイルが接続されたリモートサーバーとして表示されます。標準のコピー&ペーストコマンドを使って、ファイルやフォルダ全体をどちらの方向にもコピーできます。

AirDrop、Bluetooth、USB ケーブル、サードパーティのクラウドストレージは不要です。転送は WebSocket 接続で end-to-end 暗号化され、両デバイスが同じネットワーク上にある場合はローカル Wi-Fi 上にとどまります。

仕組み

CLI はデスクトップのディレクトリを Spck Editor のファイルマネージャーでリモートサーバープロジェクトとして公開します。スマートフォンに保存されたローカルプロジェクトはアプリのローカルストレージに格納されます。Spck Editor は両方を同等のプロジェクトの場所として扱うため、単一プロジェクト内で機能するコピー&ペーストを含むすべてのファイル操作が、プロジェクト間でも同様に機能します。

スマートフォン(ローカルストレージ)  デスクトップ(CLI 経由)
───────────────────────────────     ─────────────────────
my-project/               ↔        ~/projects/my-project/
  ├── index.html                      ├── index.html
  ├── style.css                       ├── style.css
  └── assets/                         └── assets/
      └── logo.png                        └── logo.png

ディレクトリは再帰的に転送されます。内部のすべてのファイルがコピーされ、サブディレクトリは転送先に自動的に作成されます。

デスクトップからモバイルへ

オフライン作業、モバイルアプリしか持っていない同僚とのプロジェクト共有、デバイスへの作業スナップショット保存など、コンピューターからスマートフォンにファイルを持ち込みたい場合に使用します。

  1. デスクトップで CLI を起動し、転送元フォルダを指定する:

    spck --root ~/projects
    
  2. カメラアプリで QR コードをスキャンし、Spck Editor でリンクを開いてスマートフォンを接続する。

  3. Spck Editor のプロジェクトパネルに、デスクトップフォルダがリモートサーバープロジェクトとして表示される。

  4. リモートプロジェクトで目的のファイルまたはフォルダを長押しし、コピーをタップする。

  5. スマートフォンのローカルプロジェクトに移動する(または新規プロジェクトから新規作成)。

  6. 転送先フォルダを長押しし、ペーストをタップする。

ファイルがデスクトップからダウンロードされ、スマートフォンのローカルストレージに保存されます。

モバイルからデスクトップへ

外出先での編集後やデバイスで作成したプロジェクトを統合する場合など、スマートフォンからデスクトップに作業を送り返したい場合に使用します。

  1. デスクトップで CLI を起動し、ファイルを保存したいフォルダを指定する:

    spck --root ~/Desktop/from-phone
    
  2. QR コードをスキャンしてスマートフォンを接続する。

  3. Spck Editor で、送信したいファイルを含むローカルプロジェクトを開く。

  4. 目的のファイルまたはフォルダを長押しし、コピーをタップする。

  5. プロジェクトパネルでリモートデスクトッププロジェクトに移動する。

  6. 転送先フォルダを長押しし、ペーストをタップする。

ファイルがスマートフォンのローカルストレージから読み取られ、CLI 経由でデスクトップに書き込まれます。

プロジェクト全体の転送

プロジェクトフォルダ全体を一度のペースト操作でコピーできます。ファイルツリーでプロジェクトルートを長押ししてコピーを選択し、転送先に移動してペーストします。すべてのサブディレクトリ内のすべてのファイルを含む、ディレクトリツリー全体が転送されます。

これは以下の場合に便利です。

  • 大きな変更を加える前にモバイルプロジェクトをデスクトップにバックアップする
  • 既存のデスクトップコードベースからスマートフォンの新規プロジェクトを初期化する
  • 複数デバイスの作業を1か所にまとめる

ヒント

ファイルサイズ制限

デフォルトの最大ファイルサイズはファイルあたり 10 MB です。画像、アーカイブ、コンパイル済みバイナリなどの大きなファイルを転送するには、CLI 設定で制限を増やしてください。

{
  "filesystem": {
    "maxFileSize": "200MB"
  }
}

詳細は CLI 設定 を参照してください。

転送速度

速度はローカル Wi-Fi またはインターネット接続に完全に依存します。大きなディレクトリの場合、転送はファイルごとに実行されるため、全体のスループットはファイル数に比例します。一般的な家庭用 Wi-Fi ネットワークでは、テキスト中心の小規模プロジェクト(数百ファイル)は数秒で完了します。

セキュリティ

すべての転送は WSS(WebSocket Secure)で暗号化され、各リクエストはセッションごとのシークレットキーで署名されます。リレーサーバーはデバイス間でメッセージを転送しますが、暗号化されていないコンテンツを受信することはありません。詳細は CLI セキュリティ を参照してください。

複数の転送を同時実行

CLI は単一のルートディレクトリを公開します。複数の場所から同時に転送するには、別々のターミナルで CLI インスタンスを起動してください。

# ターミナル 1: ~/projects を公開
spck --root ~/projects

# ターミナル 2: ~/Documents を公開
spck --root ~/Documents

各インスタンスが独自の QR コードと接続を生成し、両方のリモートサーバーが Spck Editor のプロジェクトパネルに同時に表示されます。