Swift

Swift:Sandboxに阻まれて。

今度はSandboxの機能そのものに阻まれています。

SandboxをONにすると、Documentsフォルダにアクセスできなくなります。OFFにすれば、通常通り動きます。これはSandboxの基本機能によるアクセス制限で、どうすれば切り抜けられるか、試しに思いついたことをやってみたり、調べたりしています。

  • Xcodeの.entitlementsにDocumentと文書をtrueで追加してもNG。
  • アプリのbase folderをPicturesに入れ替えたらOK。

つまり、Sandboxのデフォルトのフォルダだけしかアクセスできないようですね。キヤノンのデジカメアプリがPicturesの下にTransferredというフォルダを作るのはそうした理由なり背景があったのでしょうか?

このことを前提条件にして仕様変更とドキュメントを修正します。

ところでXcodeのソースコードにアクセスするには、どうすればいいのでしょう?この次のアプリではその問題に直面しますので、いま少し調べるべきかもしれません。ほとんど力尽きているのですが。

追記:Sandboxが有効になると、パスにidentifierが付加されるので、この長さを判断してSandbox対応することでソースコードを一元管理できるようにすることにしました。ドキュメントも一元管理できるようにします。

Categories: Swift, 技術