У меня есть база данных MySQL, где я храню данные для моего приложения. Теперь я хочу получить эти данные с ион через PHP, в строке
JSONObject jObject = new JSONObject (результат);
это дает мне ошибку в результате
ошибка
Error:(207, 17) error: method setCallback in interface Future<T> cannot be applied to given types;
required: FutureCallback<JsonObject>
found: <anonymous FutureCallback<JsonArray>>
reason: actual argument <anonymous FutureCallback<JsonArray>> cannot be converted to FutureCallback<JsonObject> by method invocation conversion
where T is a type-variable:
T extends Object declared in interface Future
MainActivity.java
boolean loading=Ion.with(getApplicationContext()).load(URLPHP)
.asJsonObject()
.setCallback(new FutureCallback<JsonArray>() {
public void onCompleted(Exception e,JsonArray result) {
try {
JSONObject jObject = new JSONObject(result);
JSONArray jArray = jObject.getJSONArray("Items");
for (int i = 0; i < jArray.length(); i++) {
JSONObject jObject_0 = jArray.getJSONObject(i);
JSONObject Info = jObject_0.getJSONObject("item_info");
JSONObject costs = jObject_0.getJSONObject("item_cost");
Log.e("Item", Info + ", " + costs);
}
} catch (JSONException xe) {
// TODO Auto-generated catch block
xe.printStackTrace();
}
}
});
PHP
<?php
if($_SERVER["REQUEST_METHOD"]=="POST"){
include 'connection.php';
showItem();
}
function showItem()
{
global $connect;
$query = " Select * FROM Items; ";
$result = mysqli_query($connect, $query);
$number_of_rows = mysqli_num_rows($result);
$temp_array = array();
if($number_of_rows > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$temp_array[] = $row;
echo '$row';
}
}
echo "Fertig";
header('Content-Type: application/json');
echo json_encode(array("Items"=>$temp_array));
mysqli_close($connect);
}
?>
Задача ещё не решена.
Других решений пока нет …