2011-01-28 16 views
2

Newby質問です。私たちは既存のiPhone/iPadアプリケーションを持っています。このアプリをMac App Storeで利用できるようにするにはどうすればいいですか?プロジェクトを分岐して別途Macコードを開発するのか、既存のプロジェクトをすべてのデバイス用に構築することができますか(現在はiPhoneとiPad向けです)。iphoneアプリをMac App Storeのリリース用に簡単に拡張できますか?

あなたのご意見やご感想はありがとうございます。

+0

@BoltClockを助け、私のようなそれを投稿したい、上のスポットを願っています。 – Lazarus

+0

@Lazarus:完了: – BoltClock

+0

開発者は、あなたのアプリをMacに移植するだけではありません。 MacはiPhoneとはまったく異なる点があり、単純にアプリケーションを移植することは恐ろしいデザイン面につながるだろう。 –

答えて

1

iOSとMac OSは異なり、簡単に混在できません。ただし、Mac OSアプリを対象とした新しいプロジェクトの中で、iOSアプリを動かすコードを共有することはできます。だから私はあなたがする必要があるもののほとんどが管理(別のプロジェクト)とUIベースであると思います。

UI要素(XIB)を作成するときは、それらのプロジェクト間で共有することはできませんが、ローカルプロジェクトのディレクトリ構造内にある必要があります。

Good Luck!

+0

これはかなりそれを要約します。あなたのネットワーク/数学/論理を外部クラスで行います。 UIコントローラの唯一のものは... UIのもの... –

4

あなたが気づかなければならない最も重要なことは、iOSとMac OS Xのインターフェイスのパラダイムが大きく異なることです。あなたのアプリケーションを移植したいのであれば、分岐コードを調整してMac用の基本的に同じアプリケーションをコンパイルする以上のことになります。

お使いのMacとiOSのアプリは、同じアプリであるため、同じ実装コードを共有できます。しかし、あなたのMacのユーザーとモバイルユーザーにあなたのアプリを提示する方法は異なるだろう。たとえば、Mac OS Xでは、サイドバー、ダイアログ、パネル、ウィンドウ(意図しない)、クリックなどが考えられますが、iOSではシート、ビュー、タッチなどが考えられます。

私は、これは他の回答よりも理論上で実現するが、それはあなたが:)

1

を考えて取得するほんの少しの先端のiPhone上のGUIは、MAC OS X上のGUIがのAppKitを使用して、UIKitのを使用しています。 共通点は1つあり、NSData、NSStringなどが含まれているFoundationがあります。

Macアプリケーションストアで再利用できるコードは、基礎的な「低レベル」のコードだけです。 UIKitはMac OS Xで動作しませんX

+0

"UIKitはMac OS Xで動作しません"これはもう本当ですか? http://www.apple.com/macosx/whats-new/full-screen.htmlとhttp://www.apple.com/macosx/whats-new/app-store.html –

+0

@gigiwattsはアプリあなたが抽象レイヤーを必要とするのと同じ時間に2つのプラットフォームのために開発したい場合は、ライオンの中には、iphoneアプリのように見えるUIKitを意味するものではありません、AppleはMac用のAppKitとiPhone用のUIKitを開発しています –

1

私は別のxCodeプロジェクトが必要になると思います。あなたはおそらく1つのプロジェクトですべてを行うことができますが、ターゲットプラットフォームを切り替えるときに設定を構成するのは苦労でしょう。

共通コードの共有ライブラリを作成できます。

これらのリンクが役立つことを願っています。あなたのプロジェクトを準備するために

幸運を祈り、 xj1200

http://t-machine.org/index.php/2009/02/26/using-shared-libraries-for-iphone-with-multiple-projects/

http://blog.stormyprods.com/2008/11/using-static-libraries-with-iphone-sdk.html

http://www.clintharris.net/2009/iphone-app-shared-libraries/

2

は、Mac OS Xに移植する:

  1. あなたがすべきSEPAデータオブジェクトをGUIオブジェクトから評価し、可能な限りMVCデザインパターンに準拠させてください。これは、Mac OS Xでもどちらでも動作します。この方法でできるだけ多くのコードを再利用できるようになります。
  2. 各プロジェクトには、Mac OS XのターゲットとiOSのターゲットが必要です。
  3. GUIが異なるため、GUIのみがデータを表示し、保持しないようにアプリケーションを計画する必要があります。デリゲート、プロトコル、通知などを使用して、オブジェクト間でデータを渡します。
  4. あなたは

をできる限りモジュラーとして、プロジェクトを作成し、それはそれが答えだ、

+0

Toこれをわずかに追加してください:あなたのコントローラとモデルを直接再構築して、ビューを書き直すことができることを期待してください。適切に統合されたUIに、Objective-Cのビューのみを使用してCまたはC++でコントローラおよび/またはモデルを作成することは、クロスプラットフォームでは珍しくありません。 – Tommy

関連する問題