-1

iOSとAndroidの間でオブジェクトを渡すことができるかどうか疑問に思っていました.

2 つの Android スマートフォン間で異なるコマンドを渡すために、コマンド デザイン パターンを使用しています。iPhoneスマートフォンと通信するためにiosプラットフォームをどのように関与させるかについて、私は今興味があります

JSON は役に立ちますか?

4

1 に答える 1

2

私は「コマンド デザイン パターン」についてあまり知らないことを認めます。ここに私の2セント。

2 つの異なる言語間でオブジェクトを渡すことはできません。オブジェクトは、言語に応じてさまざまな方法で実行時にのみメモリ内に作成されます。オブジェクトをテキスト (json) にシリアライズしてから、別の言語でオブジェクトの同じモデルにデシリアライズすることはできます。たとえば、オブジェクトが c# にあるとします。

public class Person
{
    String firstName { get; set; }

    public Person(String name)
    {
        this.firstName = name;
    }

}

JSON はこれだけを行うことができます

{"Person": [{"Name": "Richard"}]}

json がオブジェクトのデータ構造のみを保持していることに注意してください。他の関数を呼び出す関数がある場合、または何らかの計算を行う関数がある場合、json はそれを行うことができません。しかし、すべてが失われるわけではありません!あなたができることは、jsonメッセージオブジェクトを渡すことです。これは、コードを解析すると、メッセージに応じて検出してACTすることができます。

サンプルの json メッセージは次のようになります。

{"REPLY": [{"Response" : "OK"}]}

次に、iOS または Java でそれを解析し、if ステートメントのチェックを行います (IF OK, THEN.... ELSE...)。

つまり、異なる言語間でオブジェクトを直接渡すことはできません。データ構造を渡すことができます。このデータ構造は、必要なことを実行するために実装できる ios、java、または window 7 にメッセージを渡すのに役立ちます。この助けを願って....?!

http://en.wikipedia.org/wiki/シリアライゼーション

Java を json に変換する API http://code.google.com/p/google-gson/

于 2012-10-09T00:57:26.527 に答える