小编Sas*_*nth的帖子

改造2,同名不同的数据类型JSON解析

我试图解析来自服务器的JSON响应,如果在post方法中发送的查询中有更改,我将获得第一个作为响应,如果不是,我将获得第二个作为响应.

1:

{
    "status": 1,
    "data": {
        "firstname": "First Name",
        "lastname": "Last Name",
        "mobilenumber": "1234567894",
        "emailid": "test@gmail.com",
        "timezone": "Asia/Kolkata"
    },
    "user_id": "",
    "response": "Profile Updated Successfully"
}
Run Code Online (Sandbox Code Playgroud)

2:

{
    "status": 1,
    "data": "No changes to update",
    "user_id": ""
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,如果有更改,则data返回一个对象,如果没有更改,则data返回为字符串.

我正在使用此方法来获取数据,我正在使用Gson Convertor来映射数据.

这是请求界面

@FormUrlEncoded
@POST("pondguard/updateprofile")
Call<UserResponse> getInfoUpdated(@Field("user_id") String user_id,
                                  @Field("firstname") String firstName,
                                  @Field("lastname") String lastName,
                                  @Field("mobilenumber") String mobileNumber,
                                  @Field("emailid") String emailID)
Run Code Online (Sandbox Code Playgroud)

这是我的POJO课程

public class UserResponse implements Parcelable {

    public static final Creator<UserResponse> CREATOR = new Creator<UserResponse>() …
Run Code Online (Sandbox Code Playgroud)

android json retrofit2

3
推荐指数
1
解决办法
3631
查看次数

交错网格 LayoutManager 堆栈从末端开始

我正在尝试制作一个使用RecyclerView,在列表中显示数据的应用程序,其中LinearLayoutManager有一个选项可以设置堆栈从末端和反向布局,允许我在列表顶部显示最新数据。无论如何我可以在交错网格布局中的位置 0(顶部)显示最新数据?

android staggered-gridview android-recyclerview

2
推荐指数
1
解决办法
1135
查看次数

Android Worker中的Firebase事件监听器

我正在尝试从Android WorkManager实施一个带有Firebase数据库引用事件监听器的Worker。如果应用程序位于前景/背景中,则效果很好。但是,一旦我关闭了应用程序并且工作程序运行,事件监听器就不会触发,据我所知,我在日志中没有收到与此相关的任何错误消息。

这是一个示例代码:

class FirebaseWorker(context: Context, params: WorkerParameters) : Worker(context, params) {
override fun doWork(): Result {
    val firebaseDatabaseRef = FirebaseDatabase.getInstance().reference
    firebaseDatabaseRef.addListenerForSingleValueEvent(object : ValueEventListener {
        override fun onDataChange(dataSnapshot: DataSnapshot) {
            // Handle DataSnapshot
        }

        override fun onCancelled(databaseError: DatabaseError) {
            // Handle DatabaseError
        }
    })

    return Result.SUCCESS
  }
}
Run Code Online (Sandbox Code Playgroud)

请让我知道在关闭应用程序后是否可以做任何事情来在后台获取和处理Firebase实时数据库数据。

java android firebase firebase-realtime-database android-workmanager

2
推荐指数
2
解决办法
518
查看次数