0

ファイルをメモリに保持し、URLで機能するlibにフィードしたいと思います(NSURLを考えてください)。iOSがfile://などを使用してアクセスできるメモリマップトファイルを作成できれば便利です。

私のフォールバック方法は、メモリからファイルを提供するローカルサーバーソケットを作成することですが、可能であれば、より適切な方法を見つけたいと思います。

4

2 に答える 2

0

これを使用して、Webからファイルを読み取り、メモリにキャッシュします。

- (NSCachedURLResponse *)connection:(NSURLConnection *)connection
                  willCacheResponse:(NSCachedURLResponse *)cachedResponse
{
    NSCachedURLResponse *memOnlyCachedResponse =
        [[NSCachedURLResponse alloc] initWithResponse:cachedResponse.response
                                                 data:cachedResponse.data
                                             userInfo:cachedResponse.userInfo
                                        storagePolicy:NSURLCacheStorageAllowedInMemoryOnly];
    return [memOnlyCachedResponse autorelease];
}

これは、NSURLConnectionのconnection:willCacheResponse:メソッドです。私のNSURLはWebを指しますが、バンドル内のファイルを指す場合は機能するはずです。https://github.com/rs/SDURLCacheからそのコードを取得しました

于 2011-05-04T10:26:35.590 に答える
0

最終的にNSURLProtocolを使用して、メモリからファイルを提供する新しいURLスキームを作成しました。

于 2011-05-06T05:07:38.157 に答える