这是我使用的代码:
if (toEditText.getText().toString().length() > 0) {
getName = toEditText.getText().toString().substring(0, toEditText.getText().toString().length() - 1) + "";
StringBuffer sb = new StringBuffer();
sb.append(Constants.SERVER_IP);
sb.append("/api/groups.json");
String url = sb.toString();
LogService.log(TAG, "download url: " + url);
JSONObject juser = new JSONObject();
JSONArray userIds = new JSONArray();
for (int i = 0; i < user_ids.size(); i++) {
userIds.put(user_ids.get(i));
}
try {
juser.put("group_name", getName);
juser.put("owner_id", UserCredentialsPersistence.getUserId(context));
juser.put("user_ids", userIds);
juser.put("group_type", null);
juser.put("name_protected", true);
LogService.log(TAG, "JSON: " + juser.toString());
} catch (JSONException e1) {
// TODO Auto-generated catch block …Run Code Online (Sandbox Code Playgroud) 我正在使用Volley来设置图像网址.我的代码崩溃在:
mrq=Volley.newRequestQueue(this);
Run Code Online (Sandbox Code Playgroud)
Log cat说豁免是在: com.android.volley.toolbox.DiskBasedCache.streamToBytes
如果我评论代码,程序不会崩溃.
我曾尝试重启我的手机几次,因为在我的研究中我发现这对于一些有这个问题的人来说已经有用了.
为什么要使用如此多的内存创建RequestQueue?
如何防止OutOfMemoryError发生?
我需要清空缓存吗?
感谢您的帮助,并花时间阅读本文.
我在一个活动中有一个请求,我需要知道请求是否被取消,所以我onResponse()通过使用检查了方法Request.isCanceled(),但它返回false.我不知道什么时候请求真的被取消了,我已经阅读了代码,仍然没有答案.
所以我使用Recycler视图在网格中显示图像,并使用volley库从url下载图像作为位图.
public void onBindViewHolder(final TrendingAdapter.ViewHolder viewHolder, int i) {
ImageRequest request = new ImageRequest(url, new Response.Listener<Bitmap>() {
@Override
public void onResponse(Bitmap bitmap) {
if (bitmap != null) {
viewHolder.getmImageView().setImageBitmap(bitmap);
}
}
}, 0, 0, null,
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
}
});
AppController.getInstance().addToRequestQueue(request);
}
Run Code Online (Sandbox Code Playgroud)
问题是当我在下载图像之前滚动并跳过一个或多个视图并且该视图被回收时,图像donwnload reqest在这些中间视图上没有被取消,导致在实际图像之前闪现那些/那些图像加载在该视图中.
所以我想用标签取消那些中间图像请求,但无法弄清楚如何在其他并行视图中取消请求!
此外,当我使用凌空NetworkImageView(它自己这样的图像取消)给出了完美的结果.但我需要获取每个图像的位图来从中选择颜色,所以我不能使用NetworkImageView.
问)如何在使用recyclerview充气的特定imageview上取消所有待处理的凌空图像请求(除了它应该加载并且不影响其他平行视图的那个)?
android bitmap android-volley android-viewholder android-recyclerview
我试图在Android上用Volley库实现一个JsonRequestObject
这是方法的代码
private void makeJsonObjReq() {
showProgressDialog();
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.GET,
Const.URL_JSON_OBJECT, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG, response.toString());
msgResponse.setText(response.toString());
hideProgressDialog();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
hideProgressDialog();
}
}) {
Run Code Online (Sandbox Code Playgroud)
这是错误信息
错误:(71,34)错误:对JsonObjectRequest的引用与JsonObjectRequest中的构造函数JsonObjectRequest(int,String,String,Listener,ErrorListener)和JsonObjectRequest匹配中的构造函数JsonObjectRequest(int,String,JSONObject,Listener,ErrorListener)不一致
在一个凌空的android教程之后,我试图弄清楚如何让它工作,它一直在崩溃.我认为我没有正确地包含Application类. http://arnab.ch/blog/2013/08/asynchronous-http-requests-in-android-using-volley/
我没有得到任何错误,但应用程序崩溃,我需要进一步检查logcat,但我问的是代码是否正确实现.
应用程序/爪哇/ co.mystuff.CoolApp/MainActivity.java
package co.mystuff.CoolApp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.VolleyLog;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.json.JSONException;
import org.json.JSONObject;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Make call
final String URL = "http://api.dribbble.com/shots/everyone";
// pass second argument as "null" for GET requests
JsonObjectRequest req = new JsonObjectRequest(URL, null,
new Response.Listener<JSONObject>() {
@Override
public void …Run Code Online (Sandbox Code Playgroud) 我在Link中使用Volley Library填充ListView
"http://192.168.***.***/allquestions/prev_ans.php/?number="+phone_number+"&&query="+query"
Run Code Online (Sandbox Code Playgroud)
假设,用于查询"问题改变"的Json数组是
[{"Name":"AAAAA","Id":"101010101","ques":"question change","Type":"class1","relatedFields":"Eduation","Name":"hshsusu","ans":"new answer 1","replyDate":"2015-09-14","replyTime":"21:05:39"}]
Run Code Online (Sandbox Code Playgroud)
查询"newquestionforcrop"的JSON数组是
[{"Name":"AAAAA","Id":"101010101","ques":"question change","Type":"class1","relatedFields":"Eduation","Name":"hshsusu","ans":"new answer 1","replyDate":"2015-09-14","replyTime":"21:05:39"}]
Run Code Online (Sandbox Code Playgroud)
问题是,当我的查询之间没有空格时,它只填充列表.
我该如何解决这个问题?
我正在制作多个Volley StringRequests.
该requestfriendlist方法获取与"火影忍者"的配置文件列表.该requestimagelink方法获取的每个配置文件在它前面的方法result.However我收到效应初探(ImageLink的)不是从订单拿到图片requestimagelink方法不是为了.
例如 -
请求[1,2,3,4]
回复[2,1,4,3]或任何其他订单.
请帮我解决这个问题.
附加代码段
protected void onCreate (Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.list);
adapter = new CustomImageAdapter(this, imageList);
listView.setAdapter(adapter);
requestfriendlist("Naruto");
}
private void requestfriendlist (String profilename)
{
String uri = String.format(Config.URL_REQUEST_FRIENDS + "?current_user=%1$s", profilename);
Log.d(TAG + "uri", uri);
StringRequest strReq = new StringRequest(
Request.Method.GET,
uri,
new Response.Listener<String>()
{
@Override
public void onResponse (String response)
{
try
{
JSONObject responseObj = new JSONObject(response);
Log.d(TAG + "friends", response); …Run Code Online (Sandbox Code Playgroud) 花时间试图从android调用一个json,但问题是上下文的混乱,这是错误返回我
02-09 19:48:05.494 16350-16350/com.example.cesar.mybankaccess E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.cesar.mybankaccess, PID: 16350
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference
at restful.dao.PatronSingleton.getRequestQueue(PatronSingleton.java:37)
at restful.dao.PatronSingleton.<init>(PatronSingleton.java:25)
at restful.dao.PatronSingleton.getInstance(PatronSingleton.java:30)
at restful.dao.Cliente.dologin(Cliente.java:84)
at restful.RestfulOperacional.dologin(RestfulOperacional.java:22)
at com.example.cesar.mybankaccess.view.Login.dologin(Login.java:118)
at com.example.cesar.mybankaccess.view.Login.access$100(Login.java:30)
at com.example.cesar.mybankaccess.view.Login$2.onClick(Login.java:67)
at android.view.View.performClick(View.java:5198)
at android.view.View$PerformClick.run(View.java:21147)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Run Code Online (Sandbox Code Playgroud)
我没有得到修复,我确定是上下文getContext或类似的,但无法构建一个
public class RestfulOperacional {
Cliente cliente;
public RestfulOperacional() {
cliente = new Cliente();
}
public Object dologin(String s, String …Run Code Online (Sandbox Code Playgroud) import flask
import flask.ext.sqlalchemy
import flask.ext.restless
app = flask.Flask(__name__)
app.config['DEBUG'] = True
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////tmp/test.db'
SQLALCHEMY_TRACK_MODIFICATIONS=True
db = flask.ext.sqlalchemy.SQLAlchemy(app)
class Person(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode, unique=True)
birth_date = db.Column(db.Date)
class Computer(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode, unique=True)
vendor = db.Column(db.Unicode)
purchase_time = db.Column(db.DateTime)
owner_id = db.Column(db.Integer, db.ForeignKey('person.id'))
owner = db.relationship('Person', backref=db.backref('computers',
lazy='dynamic'))
db.create_all()
manager = flask.ext.restless.APIManager(app, flask_sqlalchemy_db=db)
manager.create_api(Person, methods=['GET', 'POST', 'DELETE'])
manager.create_api(Computer, methods=['GET'])
app.run(host='0.0.0.0', port=5000, debug=True)
Run Code Online (Sandbox Code Playgroud)
使用凌空柱
RequestQueue queue = Volley.newRequestQueue(this);
StringRequest …Run Code Online (Sandbox Code Playgroud) android ×10
android-volley ×10
json ×3
android-json ×1
bitmap ×1
caching ×1
cookies ×1
java ×1
request ×1
web-services ×1