나는 다음과 같은 문제가있다 :구문 분석 쿼리는 항상 빈 목록을 반환
나는이 안드로이드 애플 리케이션을 가지고 하나의 응용 프로그램에서 나는 구문 분석을 통해 몽고 DB에 데이터를 추가하고 다른 응용 프로그램에서 나는에서 추가 정보를 검색 할 첫 번째 앱.
문제는 두 번째 앱에서 DB를 쿼리 할 때마다 빈 목록이 표시된다는 것입니다. API 키와 함께 Mongo DB의 키를 확인했는데 모든 것이 제 앱에서 괜찮아 보입니다. 두 번째 응용 프로그램이 RecyclerView
public class ParseDb extends Application {
@Override
public void onCreate() {
super.onCreate();
// Enable Local Datastore.
Parse.enableLocalDatastore(this);
// Add your initialization code here
Parse.initialize(new Parse.Configuration.Builder(getApplicationContext())
.applicationId(API_KEY)
.server("http://injuriesandsuspensions.herokuapp.com/parse/")
.build()
);
ParseUser.enableAutomaticUser();
ParseACL defaultACL = new ParseACL();
// Optionally enable public read access.
defaultACL.setPublicReadAccess(true);
ParseACL.setDefaultACL(defaultACL, true);
}
public class MainActivity extends Activity {
private List<AboutTeams> aboutTeamsList = new ArrayList<AboutTeams>();
private RecyclerView recyclerView;
private GamesAdapter gamesAdapter;
public void retrieveGamesFromDatabase(){
ParseQuery<ParseObject> query = ParseQuery.getQuery("InjuriesAndSuspensions");
query.whereEqualTo("score", "none");
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> gamesList, ParseException e) {
if (e == null) {
Log.d("score", "Retrieved " + gamesList.size() + " scores");
for(int i = 0; i < gamesList.size(); i++){
AboutTeams aboutTeams = new AboutTeams();
aboutTeams.setId(String.valueOf(gamesList.get(i).getObjectId()));
aboutTeams.setScore(String.valueOf(gamesList.get(i).get("score")));
aboutTeams.setHomeTeam(String.valueOf(gamesList.get(i).get("homeTeam")));
aboutTeams.setHomeTeamMissing(String.valueOf(gamesList.get(i).get("homeTeamMissingPlayers")));
aboutTeams.setAwayTeam(String.valueOf(gamesList.get(i).get("awayTeam")));
aboutTeams.setAwayTeamMissing(String.valueOf(gamesList.get(i).get("awayTeamMissingPlayers")));
aboutTeams.setDate(String.valueOf(gamesList.get(i).get("gameDate")));
Log.d("About Teams " , aboutTeams.toString());
aboutTeamsList.add(aboutTeams);
gamesAdapter.notifyDataSetChanged();
}
} else {
Log.d("score", "Error: " + e.getMessage());
}
}
});
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_listview);
recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
gamesAdapter = new GamesAdapter(aboutTeamsList);
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
recyclerView.setLayoutManager(mLayoutManager);
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setAdapter(gamesAdapter);
retrieveGamesFromDatabase();
}
I`ve 거의 3 일이 일에 고전을 면치 못하고으로 도와주세요에서 정보를 검색하기 위해 여기
는 코드입니다. 나는 컬렉션 DB에 정보를 추가 할 때
을? 몇 가지 로그 또는 오류를 제공해야합니다 ... –
내 쿼리 query.whereEqualTo ("score", "none"); 이것은 데이터베이스에있다. 오류가 없으므로 쿼리가 문제가 아닙니다. 나는 항상 빈 목록을 얻는다. 나는 또한 "InjuriesAndSuspensions"에서 모든 대상을 얻으려고했지만 아직 비어 있습니다. – dragosiv
대시 보드를 사용하여 대상 구문 분석 개체의 ACL 표시 값을 확인한 다음 쿼리에 대상 개체의 ACL을 통해 관련 사용자 권한의 마스터 키 또는 유추 된 액세스 권한이 있는지 확인하십시오. –