2013-04-11 71 views
1

我想建立一個基於酒店管理的android應用程序。該應用程序只是向用戶提供交易列表。該網站存儲有關用戶的數據,並在數據庫中的sql表中處理。最簡單的方式來溝通數據之間的PHP和Android

是否有任何簡單的方法來交流數據,如交易細節和用戶詳細信息,如用戶名,酒店名稱等從網站到Android應用程序和反之亦然。

我知道這是可能的使用json。但我發現很難實施。

+0

如果您在使用json時遇到問題,請查看[gson](https://code.google.com/p/google-gson/)它應該處理所有json問題 – Luke 2013-04-11 18:53:29

+4

JSON不是溝通的方式,這是數據的格式。溝通方式包括Web服務(如REST,XML-RPC,SOAP)或簡單的HTTP請求。 – hexblot 2013-04-11 18:54:16

+0

你覺得什麼困難?它是PHP端還是Android端? – blackpanther 2013-04-11 18:58:57

回答

1

您可能會發現下面的教程非常有用:http://www.helloandroid.com/tutorials/connecting-mysql-database

本教程介紹瞭如何使用MySQL數據庫和PHP,以JSON發送到一個Android應用程序。

(假設你使用的是MySQL數據庫,如果沒有,這仍然是一個有用的教程)。

您還可以使用GSON,谷歌的API和下面的教程: http://www.techrepublic.com/blog/app-builder/use-gson-to-work-with-json-in-your-android-apps/1386

3

它在Android和PHP json_encode()使用https://code.google.com/p/google-gson/(也採取blackpanthers響應看看)非常痛苦,在這裏短摘錄如何綁定在java中那個東西在一個具體的例子:

先在PHP實現json_encode(),並在瀏覽器中調用,所以你可以看到結果,說,你喜歡的東西:

{」 user_name「:」我的名字「,」user_surname「:」my_surname「,」pho nes「:{」mobile「:」11111「}}

現在,您已經擁有包含屬性」user_name「,」user_surname「和」phones「的JSON實體。而「手機」是嵌套實體,包含「移動」屬性。

現在你爲每個實體創建一個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... 

在這裏你去!