を拒否することができるのは、始めましょう基礎。
モバイルサイトは、電話のウェブブラウザからアクセスできるウェブサイトです。 HTMLページはWebサーバーから提供されます(UIは電話レイアウト用に最適化されています)。
ネイティブアプリケーション(「アプリ」と呼ばれることもあります)は、本質的に電話にダウンロードされる実行可能アプリケーションです。 iPhoneの場合、これらはObjective-Cで書かれています。 Androidの場合はJavaで書かれています。
それが目的を使用してコンパイルする必要がありますiPhoneの「ホーム画面」から起動するアプリケーションのため-in:Windows Mobile用これらはC#で書かれている、など
ここであなたが直面している悪いニュースですC. Android/Javaと同じです。
- カメラにアクセスするには、Objective C(またはAndroid用Java)を使用してコンパイルする必要があります。だからここ
があなたのためにいくつかの良いニュースだ:
- あなたは簡単に、純粋にUIのフロントエンドであることと、ビジネスロジックのためのREST APIのモデルを使用して、既存のサーバー側のコードを呼び出すために、あなたのネイティブアプリを書くことができます。あなたは、あなたがアプリに公開する必要がある機能を公開するだけです。それは既存のコードベースを再利用してアプリケーションをよりシンプルにする1つの方法です。 RESTKitのようなObjective Cのフレームワークは、これを簡単にする良いものです。
- あなたのアプリを本当に安くすることができ、本質的にあなたのサイトのウェブブラウザにすることができますが、それはiPhone用にそれをカスタマイズしないとAppleによって承認されないことがあります。また、アプリのように機能することを期待しているiPhoneユーザーにとっては、貧弱な体験となるでしょう。私はこれをお勧めしません。
- 複数のプラットフォームにリリースする予定がある場合や、Objective Cプロジェクト(および今後のJavaプロジェクト)を維持する必要がない場合は、PhoneGap、Appcelerator Titanium、Sencha Touchなどを使用できます。これらは、Webテクノロジー(HTML 5)で書かれたアプリケーションをネイティブアプリにコンパイルするラッパーです。これらのHTML 5アプリケーションはカメラなどにアクセスできます。既存の開発者はObjective-Cを学ぶ必要はなく、既に持っているHTML/JavaScriptスキルを使用できます。これらの技術には多くの利点があります。欠点は、あなたのアプリがネイティブアプリと同じくらいよく見える/感じることができないか、電話の「クール」な機能を使用することです。それは良いモバイルウェブサイトのようなソーシャルを実行します。優れたUI /設計者がいる場合は、これらのWebテクノロジを使用してかなり良いものを作成できます。しかし、ネイティブアプリにウェブサイトをエミュレートしようとしているだけで、次のキラーゲームを作成していないのであれば、それはおそらく多くの理由であなたの最良の賭けです。
Googleのネイティブアプリとphonegap(またはsencha touch)の場合、賛否両論の情報がたくさんあります。それはおそらくあなたが学習を始めるのに良い場所です。
objective-cをどれくらいよく知っていますか? –
多くのC++バックグラウンドがあり、Ob-Cの違いなどについて一般的に理解しています。 –