2011-02-04 7 views
0

MoSyncを使用してネイティブUIを使用してアプリケーションを作成することができるかどうかは知りませんか?
私はすべてのUI /グラフィックスに独自のUIライブラリを使用していることを伝えることができ、ネイティブのUI要素は使用しません。MoSyncのネイティブUIとデプロイメント

また、私はとにかく質問を作成しています。 MoSyncは特定の電話をターゲットにするのはなぜですか?ターゲットとするプラットフォームの汎用インストールパッケージを作成することはできませんか? (Android用の.apkファイルなど)。可能であれば、配布が容易になるはずです。

答えて

1

今や標準的な方法は、MAUIライブラリを使ってカスタムの非ネイティブUIを作成することでした。 2011-02-03現在、AndroidとiPhone用の実験的なネイティブUIフレームワークがあります。しかし、ユーザーのドキュメントは存在しないので、詳細についてはソースコードを確認する必要があります。ネイティブウィジェットにアクセスするには、maapi.idlで定義されているmaWidget *システムコールを使用してください。使用可能なウィジェットおよびプロパティのリストについては、Types.javaを参照してください。このAPIは変更され、拡張される可能性が高いことに注意してください。

簡単なネイティブUI例:現在

#include <MAUtil/Moblet.h> 

#include <IX_WIDGET.h> 

class NativeUIMoblet : public MAUtil::Moblet 
{ 
public: 
    NativeUIMoblet() 
    { 
     // Create a screen 
     MAHandle mainScreen = maWidgetCreate("Screen"); 

     // Create a 'Hello World' label 
     MAHandle helloLabel = maWidgetCreate("Label"); 
     maWidgetSetProperty(helloLabel, "text", "Hello World!"); 

     // Add the label to the screen 
     maWidgetAddChild(mainScreen, helloLabel); 

     // Show the screen 
     maWidgetScreenShow(mainScreen); 
    } 

    void keyPressEvent(int keyCode, int nativeCode) 
    { 

    } 

    void keyReleaseEvent(int keyCode, int nativeCode) 
    { 

    } 
}; 

extern "C" int MAMain() 
{ 
    MAUtil::Moblet::run(new NativeUIMoblet()); 
    return 0; 
}; 

は、利用可能なエミュレータのサポートはありませんので、あなたは、デバイス上または特定のSDKエミュレータでそれを実行する必要があります。

特定の携帯電話を対象とする理由は、特定のデバイスに固有のバグが存在するためです。しかし最近のMoSyncの夜間のビルドでは、Android 2.1のような汎用プラットフォーム用に構築することができます。

+0

一般的なapkファイルを作成できるというのは重要な機能だと思います。アプリケーションストアにアプリケーションを提出するほうがずっと簡単です。 私はMoSyncを実際に使用していません(異なるフレームワークの研究を行っています)ので、何も言わないこともあります。 とにかく、ありがとうございます。 – Rutger

1
+2

[リンクのコンテキストを提供してください](http://stackoverflow.com/questions/how-to-answer)。これは理論的に質問に答えるかもしれませんが、答えの本質的な部分をここに含め、参照用のリンクを提供することが望ましいでしょう(http://meta.stackexchange.com/q/8259)。 – Gilles

関連する問題