3

Android 用とiOS 用のアプリを作成したいと考えています。

現在、アプリケーションで多くのネイティブ C++ コードを使用する必要があります。
だから私は知りたい:

  • ネイティブ コードの使用に関するパフォーマンスの問題はありますか?
  • ネイティブ コードを使用して (携帯電話の) リソースを完全に制御することは可能ですか?
  • Android または iOS でネイティブ コードを使用する際の制限や欠点はありますか?
  • Android/iOS アプリ開発でネイティブ コードを多用することを推奨できますか? またはおそらくそれは落胆していますか?
4

4 に答える 4

3

ネイティブ UI コントロールとイベントへのフル アクセスには、通常、iOS で Objective C を使用し、Android で Dalvik に Java を使用する必要があります。計算カーネル、モデル オブジェクトの内部構造、Open GL レンダリングなどは、すべて C/C++ で実行できます。Mac OS X および iOS では、Objective C++ネイティブ コードであるため、ネイティブ コードと同じくらい高速に実行されます (コード自体が遅くない場合)。Android では、NDK インターフェースを介した呼び出しでわずかなオーバーヘッドが発生する場合があります。

iOS セキュリティ サンドボックスでは、ストック OS デバイス上のアプリからすべてのリソースを完全に制御することはできません。

于 2011-12-21T10:21:59.673 に答える
3

私はIOS開発者を持っていません。ので、Android についてのみお話しします。

Android NDKは、ネイティブ コードを使用するために使用されます。

NDK は、リソースの完全ではなくいくつかの制御を約束します。ネイティブ コードのみを使用してアプリを実装することはお勧めしません。「一般的に、C/C++ でプログラミングすることを好むという理由だけでなく、ネイティブ コードがアプリケーションにとって不可欠な場合にのみ、ネイティブ コードを使用する必要があります。」詳細については、#ネイティブ コードで開発する場合を参照してください。

于 2011-12-21T08:46:13.603 に答える
1

iOSの場合:Objective-C++を使用するのはまったく問題ありません。私のゲームコードはC++であったため、ほとんどのUI(C ++モデルオブジェクトと通信)はObjective-C++です。C ++はObjective-Cと同じようにネイティブであり、どちらもマシン命令にコンパイルされるC方言と見なすことができます。

于 2011-12-21T18:53:24.010 に答える
1

iOSでは、 cまたはc++コードとObjective-Cを使用できます( c++の場合、ソース ファイルの名前を *.m から *.mm に変更する必要があります)。しかし、アップルはそれをお勧めしません。アンドロイドについて心配しないでください。

編集

また、思い出したのは、友人が Android のcで thirdprty ライブラリを使用していたことです。だから、あなたもそこでそれを使うことができます

于 2011-12-21T08:34:42.530 に答える