-1

我想知道我是否可以在 ios 和 android 之间传递对象。

我正在使用命令设计模式来在 2 部 android 智能手机之间传递不同的命令。我现在对如何使用 ios 平台与 iphone 智能手机进行通信很感兴趣

JSON可以帮助我吗?

4

1 回答 1

2

我承认我对“命令设计模式”知之甚少。这是我的两分钱。

您不能在两种不同的语言之间传递对象。对象仅在运行时以多种不同方式在内存中创建,具体取决于语言。您可以将对象序列化为文本 (json),然后以另一种语言反序列化为对象的相同模型。因此,例如,假设您的对象在 c# 中

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

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

}

JSON 只能为您做到这一点

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

注意 json 如何只保留对象的数据结构?如果你有调用其他函数或进行某种计算的函数,json 将无法做到这一点。但一切都没有丢失!您可以做的是传递一个 json消息对象,该对象一旦解析,您的代码就可以根据消息检测并采取行动。

示例 json 消息可能是

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

然后在 iOS 或 java 中,解析它,然后执行 if 语句检查(IF OK,THEN.... ELSE...)。

所以简而言之,你不能直接在不同语言之间传递对象。您可以传递数据结构。此数据结构可以帮助将消息传递给 ios 或 java 或 window 7,您可以实现这些消息来执行您需要执行的任何操作。希望这有帮助....?!

http://en.wikipedia.org/wiki/Serialization

将 java 转换为 json 的 API http://code.google.com/p/google-gson/

于 2012-10-09T00:57:26.527 回答