나는 리사이클 뷰가 있고 서버로부터 데이터를 얻습니다. 그리고 그 좋은 점은 문제는 sqlite를 사용하는 서버에서 로컬 데이터베이스로 데이터를 저장하려고 할 때입니다. 내 질문은 내가 SQL 테이블에 목록 디렉토리를 저장할 수 있습니까 ?? 나는 목록에서 문자열을 얻기 위해 노력하고 지역 만로 저장은 작동하지 않는이 내 코드 희망 사람이 아이디어는서버에서 로컬 데이터에 저장된 데이터 sqlite 안드로이드
public void getRetrofitObject() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
APIService service = retrofit.create(APIService.class);
Call<Result> call = service.getresults();
call.enqueue(new Callback<Result>() {
@Override
public void onResponse(Call<Result> call, Response<Result> response) {
results = response.body().getResults();
todoAdapter = new TodoRecyclerAdapter(this,results);
todoRecyclerView.setAdapter(todoAdapter);
for (int i = 0 ; i<results.size();i++) {
insert(response.body().getResults().get(i).getTODO_TITLE().toString(),response.body().getResults().get(i).getPriority().toString());
}
}
@Override
public void onFailure(Call<Result> call, Throwable t) {
Log.d("onFailure", t.toString());
}});}
public void insert (String x , String y)
{
db.insertIntoDB(x,y);
}
날 :) 말하게하고이 SQLite는 삽입 방법
public void insertIntoDB(String Title,String Priority){
Log.d("insert", "before insert");
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(TODO_TITLE, Title);
values.put(priority, Priority);
db.insert(TODO_TABLE, null, values);
db.close();
}
입니다 내가이
public void getRetrofitObject() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
APIService service = retrofit.create(APIService.class);
Call<Result> call = service.getresults();
call.enqueue(new Callback<Result>() {
@Override
public void onResponse(Call<Result> call, Response<Result> response) {
results = response.body().getResults();
todoAdapter = new TodoRecyclerAdapter(this,results);
todoRecyclerView.setAdapter(todoAdapter);
for (int i = 0 ; i<results.size();i++) {
String x = results.get(i).getTODO_TITLE().toString(); //this
String y = results.get(i).getPriority().toString();
db.insertIntoDB(x,y);
}
}
@Override
public void onFailure(Call<Result> call, Throwable t) {
Log.d("onFailure", t.toString());
}});}
내가 신처럼 서버에서 저장된 문자열이 오류를 시도 편집
0 데이터베이스에 데이터를 삽입하기 전에 데이터베이스 : 여기 을 만들어야합니다FATAL EXCEPTION: main
java.lang.NullPointerException
at com.example.todo.loginretroft.Activites.TodoList$3.onResponse(TodoList.java:151)
가하는 우선 순위가 열 이름과 동일합니까? TODO_PRIORITY가 있어야할까요? – MikeT
예, 같은 이름이지만 로컬에 "결과"목록을 저장하고 싶습니다! –
@MikeT 내 업데이트를 확인하십시오 –