如果我从 ParseObject 或 ParseUser 扩展任何对象,它每次都会为它包含的每个变量返回null。例如:
public class User extends ParseUser {
private boolean emailVerified;
private String facebookID;
private int fiveHundredID;
private String fiveHundredUsername;
private String firstName;
private String lastName;
private String canonicalFirstName;
private String canonicalLastName;
private Date birthday;
private Photo profilePicture;
private int followeeCount;
private int followerCount;
}
然后我调用 User.fetchInBackground(),它不会填充除objectId,email和其他变量之外的任何变量,它们仅包含在ParseUser类中。当然,我已经在App类中初始化Parse,如:
Parse.setLogLevel(Parse.LOG_LEVEL_VERBOSE);
Parse.enableLocalDatastore(getApplicationContext());
Parse.initialize(new Parse.Configuration.Builder(getApplicationContext())
.applicationId(Const.X_PARSE_APPLICATION_ID)
.clientKey(Const.X_PARSE_REST_API_KEY)
.server(Const.PARSE_SERVER_URL)
.enableLocalDataStore()
//.addNetworkInterceptor(new JsonInterceptor())
.build());
ParseObject.registerSubclass(User.class);
我没有使用任何proguard,因为我在Debug版本上测试它。有帮助吗?此外,当我启用LocalDataStore时,它会存储我当前的用户。但是当我调用fetchInBackground()时,它会返回与存储本地数据相同的数据。此外,当我调用unpinInBackground()之后,我将调用fetchInBackground(),它仍然返回存储在DB中的本地数据。
任何帮助?
非常感谢
答案 0 :(得分:0)
在模型类的正上方添加此注释:
@ParseClassName("User")
public class User extends ParseUser {
...