-6

画面にいくつかの数字を出力する C# (.net 3.5) デスクトップ アプリケーションがあります。これをモバイルデバイスに拡張したいと思います。(私の場合は Android デバイスです。)コンピュータの画面と同じ数字を表示する必要があります。すべては概念実証にすぎません。見栄えがよくなくても、100% 動作する必要がなく、GUI が優れていたり、セットアップが簡単だったり、数値が表示されればよいだけです。

WCFサービスを使用する可能性があるため、MonoDroidを調べています。(モバイル デバイスとデスクトップ コンピューターが同じネットワークに接続されることはわかっています。) 残念ながら、MonoDroid の試用版は実際のデバイスをサポートしていません。

Java の基本的な知識があり、Android SDK を使用して、ネットワーク上の Web ページからデータを取得し、それを解釈 (XML、JSON など) して画面に表示するサンプル アプリケーションをすばやく開発できると思います。 .

したがって、私の質問は次のようになります。既存のアプリケーション内から、特定の間隔で更新できる XML データを含む Web ページを含む Web サービスを (IIS サーバー全体をセットアップせずに) 作成することは可能ですか?同じネットワーク上のコンピュータからアクセスできますか? これをどのように行うべきか、どのテクノロジーを使用するか?

または、このようなことを達成するための代替方法はありますか?

4

3 に答える 3

6

私は次のようにC#HttpListenerを使用します...

private void CreateListener
{
    HttpListener listener = null;
    HttpListenerContext context = null;
    HttpListenerRequest request = null;
    HttpListenerResponse response = null;
    string PortNumber = "9876";
    string requestUrl;
    Boolean listen = false;

    try
    {
        if (listener == null)
        {
            listener = new HttpListener();
            listener.Prefixes.Add("http://*:" + PortNumber + "/");
            listener.Start();
            listen = true;
            while (listen)
            {
                try
                {
                    context = listener.GetContext();
                }
                catch (Exception e)
                {
                    listen = false;
                }
                if (listen)
                {
                    request = context.Request;
                    requestUrl = request.Url.ToString();

                    // Process request and/or request Url
                }
            }
        }
    }
}

基本的listener.GetContext();に、HTTPリクエストが受信されるまでブロックします。次に、を使用request = context.RequestしてHTTPリクエストデータを取得して処理できます。その後、を使用context.Responseして応答を返すことができます。

実装と適応はかなり簡単です。

于 2011-04-16T16:45:00.627 に答える
1

Web テクノロジー (HTML、CSS、Javascript) を使用する Android アプリを構築できます。基本的には、Web ページを表示するようなものですが、それをアプリで囲みます。次に、PC からネットワーク上でデータを提供するという考えで実行できますが、Android SDK と Java を実際に使用する必要はありません。

このテーマについては、O'Reilly の優れた本があります: Building Android Apps with HTML, CSS, and JavaScript。オンラインでも無料でアクセスできるようです。

于 2011-04-16T15:57:37.153 に答える
1

デスクトップで WCF サービス サービスを自己ホストできます (つまり、IIS ではなくアプリケーション内でホストします)。やり方は比較的簡単です。

http://msdn.microsoft.com/en-us/library/ms731758.aspx

XML や JSON など、必要なものを返すように WCF サービスを設定するだけです。そして、「ドロイドデバイス」からヒットします。

于 2011-04-16T15:50:59.850 に答える