【发布时间】:2020-01-02 16:01:01
【问题描述】:
volley 遇到了一些奇怪的问题:
当我第一次使用参数a 检索数据时,没有什么不好的。但是,即使参数a 已更改,所有下一个响应都将与第一个响应相同。重新运行所有提到的应用程序结果。可能是什么问题?
截击码:
private void select() {
Response.Listener<String> listener = new Response.Listener<String>() {
@Override
public void onResponse(String response) {
//someCodes
}
};
Response.ErrorListener errorListener = new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
//someCodes
}
};
StringRequest request = new StringRequest(Request.Method.POST, "link", listener, errorListener) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("key", "value");
return params;
}
};
RequestQueue queue = Volley.newRequestQueue(activity.this);
queue.add(request);
}
`
另外,我的服务器主机也发生了一些变化;考虑到php 版本适合设计android web 服务的问题,由于这样的日志:"stagefright/1.2 (Linux;Android 4.4.4)" 在下载mp3 文件时可以解决另一种问题。会不会和凌空问题有关?
php代码:
<?php
$a = $_REQUEST['key'];
try {
$connection = new PDO("mysql:host=name;dbname=db", "sq", "aabsabss");
$connection->exec('set names utf8');
$selectQuery = "SELECT * FROM table WHERE cul = '$a'";
$result = $connection->query($selectQuery);
$outputArray = array();
if ($result->rowCount()) {
$rows = $result->fetchAll(PDO::FETCH_ASSOC);
foreach ($rows as $resultArray) {
$item = array();
$item['a'] = $resultArray['a'];
$item['b'] = $resultArray['b'];
$item['c'] = $resultArray['c'];
$outputArray[] = $item;
}
echo json_encode($outputArray);
}
} catch (Exception $exception) {
echo $exception;
}
感谢您的帮助。
【问题讨论】:
-
能发一下volley request和php源码让我看看吗?
-
凌空版是什么?以及您将其放置在项目中的方式或位置?
-
我无法发布,因为它很长而且问题也已关闭,您使用的库是最新的。而且它也在工作,我只是希望您将 JSON 替换为 StringRequest 并在服务器端 $item['a'] 与 UNDERSCORE 与 b 与 c 连接。试一试,并使用 request.setShouldCache(false );
-
首先你尝试使用 request.setShouldCache(false);如果不起作用,则使用带有相同标志的简单 StringRequest 并通过 echo 从 PHP 请求字符串
-
Android 正式来自 google,因为随着时间的推移,android 一直在变化,他们也在改变 volley,因为你和我都是开发人员,volley 不会打扰操作系统每次都提出新的请求,它只是告诉您和我,是的请求正在成功,并阻止了凌空类、android 类和网络类以及 android 电话类和 android 微处理器的一些代码执行,因为这就是为什么现在一天电池性能上升的原因。让开发者头疼,明天我会回答,因为它会帮助将来的人
标签: java php android android-volley response