2016-08-16 19 views
0

iOSアプリからバンドルをダウンロードして使用することはできますか?iOSアプリケーションから外部バンドルを読み込むことはできますか?

デザイン時に利用できないファイルをどのようにダウンロードして使用するかを知りたい。このコードはつねにnilバンドルになり

var bundle = Bundle(path: "/Library/Caches/NewAssets.bundle") 

...私は、バンドルタイプのプロジェクトを作成し、特定の場所にそれをダウンロードしようとしましたが、それは開きません。このパスは、負荷をテストするためだけにハードコードされています。私は完全な道だけでなく、あなたがここに見える道を試みました。 FileManager.default.fileExists(atPath :)は、(絶対パスを使用して)trueを返します。私は見つけることができるだけ多くのリソースを見てきましたが、結局あなたのプロジェクトでバンドルを落とすことになりました。設計時には使用できないため、できません。 バンドルがiOSと連携していることがわからないので、私は幽霊を追いかけるかもしれないと思う。メインバンドルとバンドルをフレームワークからロードできますが、外部バンドルはロードできません。その場合、実行時にリソースをどのようにダウンロードするのですか?それは二つの問題があった結局のところ(我々はすでにiCloudのから資産をダウンロードするためのソリューションを持っているが、クライアントは、これは高速で、より優れたUXを提供できるかどうかを確認したい)

TIA、 マイク

+0

私たちはどのような資産/ファイルについて話していますか? Appleは実行可能コードのダウンロードを許可しません。イメージなどの場合は、ドキュメントフォルダまたはtmpフォルダにダウンロードできます。 – onnoweb

+0

JSONと画像だけ。また、すべてのバンドルの標準的な部分であるInfo.plistもあります。ファイルをダウンロードして一時的な場所から共有フォルダに移動することができます。共有フォルダは、アプリケーションに関連して共有されている/ Library/Caches /フォルダです。以前のバージョンのファイルにはすでにこの場所が使用されています。 FileManagerはそこにあると言いますが、パスからバンドルを作成することはできません。 – Mikey

+0

なぜバンドルが必要だと思いますか? – onnoweb

答えて

0

。バンドルの中には、「Thumbs.db」がありました。これは、ファインダーがEXECファイルとして表示されます。バンドルがロードされないようにするためのコードとして解釈されている可能性があります。他の問題は、バンドル全体がダウンロードされていないことでした。私はバンドルをZIP形式でラップした後、ダウンロードした後にファイルを解凍して、そこにあるファイルをバンドルコードに入れてしまいました。

マイク

関連する問題