84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
我现在有一个需求。公司要实现iOS插件话开发(非HTML5方式)。大概的思路是,上架一个主程序,今后添加功能模块的时候,工程师负责开发framework。每次主程序启动的时候,动态从服务器下载该framework。实现应用程序远程更新,而且可以不用商店再次审核。但是目前遇到的问题是,据说这种远程下载动态库的方式,苹果是不允许的。有没有哪位知道,苹果为什么不允许,是不允许远程加载,还是不允许使用动态库。大家有什么好的建议么。多谢
业精于勤,荒于嬉;行成于思,毁于随。
Apple がアプリを更新するために動的ライブラリをリモートでダウンロードすることを許可している場合、レビューの手順は無駄になります。
JSPatch を見てみましょう。JSPatch は、Objective-C と JavaScript を橋渡しし、モジュールを動的に追加および変更できるオープン ソース ライブラリです。
申し訳ありませんが、私はローカルでしかテストしていません。確認したところ、SamirChen が言ったことは正しいはずです。実稼働環境では動作しないはずです。彼の答えを参照してください。
dlopen メソッドを使用してサンドボックスでフレームワークを開くことは確かに可能であり、この方法は iOS8 を必要としません。これは、もう 1 つの比較的珍しいホットフィックス方法です。
dlopen
この種のホットフィックスを実行している人もいます。起動時にサーバー側フレームワークの zip パッケージをダウンロードして、それを解凍してロードします。これは、上海にある会社で成功する可能性があります。このようなホットフィックスを実行します。
この考え方によれば、プラグイン開発は確かに実現できます。他の JSPatch や Lua ワックスと比較すると、OC インターフェイスを呼び出すためにすべて js および Lua 言語を記述するため、パッチ適用は問題ありませんが、本当に機能開発を行う場合は、フレームワークメソッドを使用すると疲れてしまいます。ネイティブ書き込みの利点とホットフィックス機能は素晴らしいです。
しかし、市場でこれを行う人がこれほど少ないのはなぜでしょうか?論理的に言えば、Apple はこの種の行為を一般的に禁止しているとのことで、発覚した場合は棚から削除される可能性があるとのことです (実際、Apple によると Lua は許可されていませんが、削除されたという話は聞いたことがありません)。はい、js メソッドでも問題ありません)。ただし、試してみることはできます。たとえば、審査中はこの機能を無効にし、審査に合格した後に有効にすることができます。
以前にもこの方法を考えたことはありましたが、リスクが高すぎると思い、実行しませんでした。結局、それが市場に出てしまったら、私が責任を負います。
Apple のレビューは現在でも非常に高速で、モジュール全体をリモートで更新する場合は、パッチを適用するだけで十分です。
この種のプラグイン開発の方が管理しやすいと思われる場合は、他の人が独自のモジュールを独自のバンドルと静的モジュールに開発するときに、プライベート ポッド ウェアハウスを使用してフレームワークと基本クラスを別のポッドに分離することをお勧めします。図書館。このように、ユーザーの送信はユーザーに影響を与えません。必要なのは、ポッドを定期的に更新することだけです。各モジュールの追加と削除も非常に便利です (アプリがそれほど大きい場合)。
オーナーさん、私も最近この問題に注目していますが、アプリを動的に更新する方法は実装されていますか?しかし、どうやってそれを行うのですか
Apple がアプリを更新するために動的ライブラリをリモートでダウンロードすることを許可している場合、レビューの手順は無駄になります。
JSPatch を見てみましょう。JSPatch は、Objective-C と JavaScript を橋渡しし、モジュールを動的に追加および変更できるオープン ソース ライブラリです。
申し訳ありませんが、私はローカルでしかテストしていません。確認したところ、SamirChen が言ったことは正しいはずです。実稼働環境では動作しないはずです。彼の答えを参照してください。
dlopen
メソッドを使用してサンドボックスでフレームワークを開くことは確かに可能であり、この方法は iOS8 を必要としません。これは、もう 1 つの比較的珍しいホットフィックス方法です。この種のホットフィックスを実行している人もいます。起動時にサーバー側フレームワークの zip パッケージをダウンロードして、それを解凍してロードします。これは、上海にある会社で成功する可能性があります。このようなホットフィックスを実行します。
この考え方によれば、プラグイン開発は確かに実現できます。他の JSPatch や Lua ワックスと比較すると、OC インターフェイスを呼び出すためにすべて js および Lua 言語を記述するため、パッチ適用は問題ありませんが、本当に機能開発を行う場合は、フレームワークメソッドを使用すると疲れてしまいます。ネイティブ書き込みの利点とホットフィックス機能は素晴らしいです。
しかし、市場でこれを行う人がこれほど少ないのはなぜでしょうか?論理的に言えば、Apple はこの種の行為を一般的に禁止しているとのことで、発覚した場合は棚から削除される可能性があるとのことです (実際、Apple によると Lua は許可されていませんが、削除されたという話は聞いたことがありません)。はい、js メソッドでも問題ありません)。ただし、試してみることはできます。たとえば、審査中はこの機能を無効にし、審査に合格した後に有効にすることができます。
以前にもこの方法を考えたことはありましたが、リスクが高すぎると思い、実行しませんでした。結局、それが市場に出てしまったら、私が責任を負います。
Apple のレビューは現在でも非常に高速で、モジュール全体をリモートで更新する場合は、パッチを適用するだけで十分です。
この種のプラグイン開発の方が管理しやすいと思われる場合は、他の人が独自のモジュールを独自のバンドルと静的モジュールに開発するときに、プライベート ポッド ウェアハウスを使用してフレームワークと基本クラスを別のポッドに分離することをお勧めします。図書館。このように、ユーザーの送信はユーザーに影響を与えません。必要なのは、ポッドを定期的に更新することだけです。各モジュールの追加と削除も非常に便利です (アプリがそれほど大きい場合)。
オーナーさん、私も最近この問題に注目していますが、アプリを動的に更新する方法は実装されていますか?しかし、どうやってそれを行うのですか