次のような URL があります。
assets-library//asset/asset.MOV?id=51CED0CF-223D-4606-81BB-241381BCF2E8&ext=MOV
次のコードを使用して UIWebview で再生しています。
NSString *localVideoHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-mp4\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
NSString *html = [NSString stringWithFormat:localVideoHTML, videoId, self.frame.size.width, self.frame.size.height];
ビデオは完璧に再生されます。これらの URL でいくつか試してみましたが、問題はありませんでした。ただし、再生前に端末から削除されていないことを確認できるようにしたいです。これを行うために次のコードを使用していました。
NSURL *url = [NSURL URLWithString:videoID];
NSError *err;
BOOL isReachable = [url checkResourceIsReachableAndReturnError:&err];
これは一部の URL では機能するように見えましたが、他の URL では機能しなかったようです。そのため、この時点で、URL が既存のファイルを指しているかどうかを事前に判断できるかどうかについて混乱しています (URL がコアに保存されているため、ファイルがデバイスから削除された可能性があります)。繰り返し利用できるデータデータベース)。SO などを読んで、私が投稿したような URL は確実に使用できないと感じています。ただし、上記のようにムービーを問題なく一貫して再生できました。
だから、私の質問は次のとおりです。
a) 上記のような URL で実行したすべてのテストを再生できることを考えると、そのような URL で再生されると仮定するのは間違いですか?
と
b) webview にロードする前に URL の「到達可能性」をテストする簡単な方法はありますか?有効な URL でない場合、コードでその問題に対処できますか?
どうぞよろしくお願いいたします。