2

GoogleChromeアプリに接続するTHEOSを使用してiPhoneを微調整しています。微調整機能の一部は、ASIHTTPRequest/ASINetworkQueueを使用してファイルのダウンロードと保存を処理することです。ユーザーはダウンロード先を自由に選択して設定できます。ダウンロードパスを「/tmp」またはGoogleChromeドキュメントフォルダに設定している限り、これは正常に機能します。たとえば「/var/ mobile / Documents /」のように、これら以外のフォルダを選択しようとすると、アクセス許可エラーは発生しません。

Domain = NSCocoaErrorDomain Code = 513 "操作を完了できませんでした。(Cocoaエラー513。)" UserInfo = 0x1f53e230 {NSFilePath = / var / mobile / Documents、NSUnderlyingError=0x1f53b3d0"操作を完了できませんでした。操作は許可されていません。

私はこのエラーを調べて、StackExchangeでここに提案された他のすべての答えを試しましたが、役に立ちませんでした。

私はIOS6用に開発しており、私が何かを見逃したと思われる場合に備えて、ここで読んだ回答をリンクとして含めています。

1-ディレクトリをiOSにする方法は?

2- iphoneはサンドボックスの外にフォルダを作成します

3- Cydiaアプリドキュメントフォルダーが作成されていません

4- NSFileManagerのiOSでroot権限を取得する(脱獄)

最後のリンクは、モバイル以外のディレクトリにアクセスするためのルートとしてアプリを実行することを示していますが、Chromeの調整のみを行っているため、これが適切かどうかはわかりません。

誰かがこの問題について私を助けてくれるか、正しい方向に私を向けてくれることを願っています。髪を引き裂いています。

これが私にとってはうまくいかないディレクトリを作成するための一般的なコードスニペットです:

NSString* SaveDir = @"/var/mobile/Documents/Test";
NSFileManager* fileManager = [NSFileManager defaultManager];

NSMutableDictionary* attributes = [[NSMutableDictionary alloc] init];
NSNumber* permission = [NSNumber numberWithLong: 0755];
[attributes setObject:permission forKey: NSFilePosixPermissions];
NSError* error = nil;
if (![fileManager createDirectoryAtPath: SaveDir 
            withIntermediateDirectories: YES       
                             attributes: attributes 
                                  error: &error]) 
{
    NSLog(@"Unable to create data directory: %@", error);
}
[attributes release];

よろしくお願いします

4

1 に答える 1

2

ビッグボスのココナッツサンドキャッスルについての私のメモは正しかった。Sandcastle dylibにリンクし、そのメソッドを使用して、サンドボックスの外部にファイル/ディレクトリを作成することができました。

もう1つのライブラリはH2Co3Unboxですこれは、デーモンによって実行されるunboxコマンド内でのみ異なることを実行できるようにします。

于 2013-03-28T23:07:53.780 に答える