我在Parse.com
开课。班级名称为classA
。该类包含一个名为owner
的列。 classA
中的多个观察可以具有相同的owner
。
我正在尝试根据owner
制定查询。我的查询语法是这样的..
ParseQuery<ParseObject> itemsAll = new ParseQuery<ParseObject>("classA");
itemsAll.whereEqualTo("owner", "ownerName");
List<ParseObject> allItems = new ArrayList<>();
try {
allItems = itemsAll.find();
} catch (ParseException e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
Toast.makeText(getApplicationContext(),"Error syncing",Toast.LENGTH_LONG).show();
}
Log.d("size", String.valueOf(allItems.size()));
我在单独的StarterApplication.Java
文件中添加了Parse身份验证代码。语法是..
public class StarterApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// Enable Local Datastore.
Parse.enableLocalDatastore(this);
// Add your initialization code here
Parse.initialize(this, "app_key", "app_token");
ParseUser.enableAutomaticUser();
ParseACL defaultACL = new ParseACL();
// Optionally enable public read access.
// defaultACL.setPublicReadAccess(true);
ParseACL.setDefaultACL(defaultACL, true);
}
}
我的android manifest
文件看起来像这样......
<application
android:name=".StarterApplication"
android:allowBackup="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@style/CustomActionBarTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ActivityOne"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
</application>
我在MainActivity
和ActivityOne
使用上述书面查询。从MainActivity
调用时,查询生成正确的结果,但在ActivityOne
内返回空列表(大小0)。任何人都可以在我错的地方帮忙。我无法弄明白。提前谢谢。