我正在尝试构建一个基于酒店管理的 android 应用程序。该应用程序只是向用户提供交易列表。该网站存储有关用户的数据并在数据库中的 sql 表中进行交易。
是否有任何简单的方法可以将交易详细信息和用户详细信息(如用户名、酒店名称等)从网站传递到 Android 应用程序,反之亦然。
我知道使用 json 可以做到这一点。但我发现很难实施。
在 android 上使用https://code.google.com/p/google-gson/并在 PHP 中使用 json_encode() 非常轻松(还可以查看 blackpanthers 的响应),这里是如何在 java 中绑定该东西的简短摘录在具体样品上:
首先在 PHP 中实现 json_encode() 并在浏览器中调用,这样你就可以看到结果,比如说,你会得到类似的东西:
{“用户名”:“我的名字”,“用户姓氏”:“我的姓氏”,“电话”:{“手机”:“11111”}}
现在,您有一个 JSON 实体,其中包含属性“user_name”、“user_surname”和“phones”。而“phones”是一个嵌套实体,包含一个属性“mobile”。
现在您为每个实体创建一个 java 类,所以我们需要两个,一个包含“电话”,另一个包含所有属性,包括实体“电话”
class Phones {
// with this annotation you can bind to
// properties from JSON named differently than
// the property in this class
@SerializedName("mobile")
String thePhone;
}
class MyJson {
String user_name;
String user_surname;
Phones phones;
}
好吧,就是这样:)啊,好吧,最后一部分
...
InputStream is = new URL("http://www.my.php.returning.json").openStream();
InputStreamReader isr = new InputStreamReader();
MyJson myJson = new Gson().fromJson(isr , MyJson.class);
... //close stream, handle exceptions, etc.
// now you've got that all in the myJson object...
干得好!
您可能会发现以下教程很有用:http ://www.helloandroid.com/tutorials/connecting-mysql-database
本教程展示了如何使用 MySQL 数据库和 PHP 将 JSON 发送到 android 应用程序。
(这是假设您使用的是 MySQL 数据库,如果没有,它仍然是一个有用的教程)。
您还可以使用 GSON、Google 的 API 和以下教程: http ://www.techrepublic.com/blog/app-builder/use-gson-to-work-with-json-in-your-android-apps/1386