Kotlin

코틀린 안드로이드 JsonArray 를 php 로 보내기

Machine_웅 2019. 3. 1. 14:54
728x90
반응형

<< 안드로이드 >>   ArrayList<Object> -> JsonArray

 

// 제이슨으로 변환
fun convert_ArrayListToJson(){

// List를 JsonArray로 만들어서 보낸다 .
var makeGson = GsonBuilder().create()
var listType: TypeToken<ArrayList<friend_data>> = object : TypeToken<ArrayList<friend_data>>() {}

try {
// 제이슨으로 변환
var roomMateList = makeGson.toJson(roomMate,listType.type)
send_GroupRoomMateList(roomMateList)
}catch (e : JSONException){
}

}

 

fun send_GroupRoomMateList(roomMate_JsonObject : String){


// 서버에 전송
var gson: Gson = GsonBuilder()
.setLenient()
.create()

//creating retrofit object
var retrofit =
Retrofit.Builder()
.baseUrl(ipAdd)
.addConverterFactory(GsonConverterFactory.create(gson))
.build()

//creating our api
var server = retrofit.create(retrofit_interface_group::class.java)

//mode 는 php에서 옵션 선택
server.setRoomMateData(3,roomNo,roomMate_JsonObject).enqueue(object : Callback<String> {
override fun onFailure(call: Call<String>, t: Throwable) {

}

override fun onResponse(call: Call<String>, response: retrofit2.Response<String>) {

}
})

}

 

<< PHP >>   

 

 else if($mode == 3){
  $roomNo = $_POST['roomNo'];
  $roomMateArray = $_POST['roomMateJsonObj'];
  $result = $setOption->setFriendList($roomNo,$roomMateArray);
  echo $result;
 }

 

 

<< Json decode 하기 >>

 

 function setFriendList($roomNo,$roomMateArray){


    // Json To Array
    $friendArray = json_decode($roomMateArray, true);

 


    return $friendArray[0]["friend_Email"];
   }

 

 

// 값 가져오기

    $friendArray[0]["friend_Email"];

인덱스 값 , 키값 을 넣어서 사용한다.

 

 

 

728x90
반응형