3

チタン製の iPhone アプリを持っていて、同じアプリを Android と iPad でも動作させたい場合、各プラットフォームでうまく動作させるには、UI を変更するか、かなりの量を書き直す必要があります。コード?

4

2 に答える 2

2

最初に行うことは、Android エミュレーターで試してみることです。それは機能しますか?Titanium は UI 要素をターゲット プラットフォームの機能にマップするため、見た目は異なりますが、機能する可能性があります。各プラットフォームには、画面に情報を表示するさまざまな方法があります。

Titanium Mobile は、一度書けばどこにでも適応するモデルです。そのため、アプリの主な機能を記述してから、UI をプラットフォームに適合させます。通常、適切に構造化されていれば、デバイスのバックエンド管理コードの大部分を再利用できます。私の状況では、妥当な大規模なアプリケーションを作成しており、すべてのネットワーク コードとデータベース インタラクション コードを再利用できます。プロジェクトをセットアップする方法により、プラットフォーム固有のフォルダーで必要なプラットフォーム固有のファイルを置き換えることができます。たとえば、form1.js が Android では動作せず、iPhone では動作する場合、動作する form1.js ファイルをフォルダー構造に一致する Android フォルダーに配置すると、コンパイル中にそこからファイルがプルされますが、続行します。共通コードからデータ ストアに database.js ファイルを使用します。

クロスプラットフォーム コードの良い例は、IDE (IDE の左下のパネル) から取得できるRSS リーダーのサンプル コードです。そこから、アプリを Android で動作させるために行う必要がある小さな変更を理解することができます。また、 Tweetaniumアプリのソース コードも気に入っています。これはより大規模なプロジェクトであり、アプリを両方の OS で同じように見せるための同様のクロスプラットフォームの取り組みがあるからです。

また、「アプリ」のソース コードについては、Titanium Mobile Titans を検索してください。実際には、リンクはhttps://github.com/appcelerator-titans/Appです。これは、UI を考慮したクロスプラットフォーム インターフェイスの例です。

これらの例にはすべてタブレット (iPad/Android) 検出コードも含まれていると思いますので、これらの画面サイズでコードがどのように分岐するかを確認できます。

于 2012-07-18T15:20:15.413 に答える
0

Titanium は技術的には「一度書けばどこにでも展開できる」プラットフォームですが、特定のターゲット プラットフォームに合わせて開発を少し変更しながら、各プラットフォームに同じコードベースを作成するのが開発者にとって最善だと思います。

たとえば、Android デバイス (Galaxy Nexus のようなハイエンド スマートフォンから Nexus 7 のようなタブレットまで) を対象とする場合のニーズは、iOS アプリケーションのベスト プラクティスであるニーズとは大きく異なります。

同じデバイス ファミリのメンバーに対しても、まったく同じアプリケーションをターゲットにすることは望ましくありません。iOS を例にとると、iPhone と iPad の両方で最適に設計されたアプリケーションは、UI/UX に大きな違いがあり、ルック アンド フィールと使用方法が大きく異なるため、これを考慮する必要があります。

「一度書けばどこにでも展開」モデルに準拠していないアプリケーションの良い例は、6wunderkinder によって開発されたWunderlistアプリケーションです。彼らは iOS アプリケーションの開発に Titanium を使用しましたが、Android アプリにも Titanium を使用せず、Titanium を完全に廃止してネイティブで開発することにしました。

これは、両方のプラットフォームで Titanium を使い続けることができないと言っているわけではありません (私は iOS と Android の両方で同じコードを適用したアプリケーションを作成しました)。既存の iOS Titanium コードベースの多くを Android アプリケーションに使用するのは非常に簡単でしたが、Android で思い描いた方​​法で表示するには、多くの犠牲を払わなければならなかったでしょう。

そのため、見栄えの良いアプリケーション (両方のデバイス ファミリで希望どおりにアプリケーションを作成する) を作成する場合、多くの場合、大量のコードを変更する必要があります。

于 2012-07-18T15:37:46.847 に答える