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
반응형