gpt4 book ai didi

android - java.lang.string 类型的 jsonexception 值
转载 作者:行者123 更新时间:2023-11-29 02:37:18 24 4
gpt4 key购买 nike

我需要显示用户的帖子..我做了recyclerview和 php 文件,当你传递一个 user_id 时,你会在 RecyclerView 中看到你的帖子。为了测试,我制作了 php 文件获取用户的所有帖子并成功运行,但是当我在你传递一个 user_id 时制作 php 文件时,它在 postman 身上工作并得到结果作为数组 postman result

它与获取所有帖子的第一个 php 文件的结果相同但是在android php文件中,一个人得到结果并在recyclerview中显示它没有问题使用 seconed php 文件给我一条消息“jsonexception 值

那是我的java代码

private void load(){

final String user_id=SharedPref.getInstance(getActivity()).getid();
RequestQueue rq= Volley.newRequestQueue(getActivity());
JsonArrayRequest jar=new JsonArrayRequest(Request.Method.POST, Constants.MyPOST_URL,null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
for(int x=0;x<response.length();x++)
{
try {
JSONObject obj=response.getJSONObject(x);

location=obj.getString("location");
description=obj.getString("description");
bloodtype=obj.getString("bloodtype");
number=obj.getString("number");
date=obj.getString("created_at");



GetMyPost data=new GetMyPost(description,location,bloodtype,number,date);

data_list.add(data);

rv.setLayoutManager(new LinearLayoutManager(getActivity()));

adapter = new RecyclerViewAdapter(getActivity(),data_list);
rv.setAdapter(adapter);

adapter.notifyDataSetChanged();
} catch (JSONException e) {
e.printStackTrace();
}
}


}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getActivity(),error.getMessage(),Toast.LENGTH_LONG).show();
}
}
)
{
@Override
protected Map<String,String> getParams() {
Map<String,String> params = new HashMap<String, String>();
params.put("user_id",user_id);

return params;
}

};
rq.add(jar);

}

我从 sharedpref 获取了 user_id 我测试了它并毫无问题地返回了我的 id请帮助我

最佳答案

向服务器发送参数

Map<String, String> params = new HashMap<String, String>();

try {
params.put("user_id", user_id);
JSONObject JsonObj = new JSONObject(params);
JsonArrayRequest jar=new JsonArrayRequest
(Request.Method.POST,
Constants.MyPOST_URL ,
JsonObj,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try{
getData_and_set_Model(response);
}catch (Exception ex){
ex.printStackTrace();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(productActivity.this,"VolleyError : " +
error.getMessage()+ "", Toast.LENGTH_SHORT).show();
}
});
AppController.getInstance().addToRequestQueue(jsonObjectReq);
}catch (Exception ex){}

create class AppController  extends Application 

在 AndroidManifest 中 >

> <application
> android:name=".AppController"
>
> <uses-permission android:name="android.permission.INTERNET" />
public class AppController extends Application {

public static final String TAG = AppController.class.getSimpleName();
private RequestQueue mRequestQueue;
private ImageLoader mImageLoader;

private static AppController mInstance;
@Override
public void onCreate() {
super.onCreate();
mInstance = this;
}

public static synchronized AppController getInstance() {
return mInstance;
}
public RequestQueue getRequestQueue() {
if (mRequestQueue == null) {
mRequestQueue = Volley.newRequestQueue(getApplicationContext());
}
return mRequestQueue;
}

public ImageLoader getImageLoader() {
getRequestQueue();
if (mImageLoader == null) {
mImageLoader = new ImageLoader(this.mRequestQueue,
new LruBitmapCache());
}
return this.mImageLoader;
}

public <T> void addToRequestQueue(Request<T> req, String tag) {
// set the default tag if tag is empty
req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);
getRequestQueue().add(req);
}

public <T> void addToRequestQueue(Request<T> req) {
req.setTag(TAG);
getRequestQueue().add(req);
}

public void cancelPendingRequests(Object tag) {
if (mRequestQueue != null) {
mRequestQueue.cancelAll(tag);
}
}
}

你的问题是发送服务器

如果没有解决告诉我

关于android - java.lang.string 类型的 jsonexception 值 <br 无法转换为 jsonarray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46338293/

24 4 0

Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com