ContentProvider 데이터 변경 수신
1781 단어 ContentObserver
QQ 커뮤니티 3에 오신 것을 환영합니다:317874559
//
@Override
public int delete(Uri uri, String selection, String[] selectionArgs) {
int number = 0;
if (uriMatcher.match(uri) == 1) {
// ,
number = mysqlite.getReadableDatabase().delete("user_info",
selection, selectionArgs);
}
//
getContext().getContentResolver().notifyChange(uri, null);
return number;
}
B 프로그램에서registerContent Observer(Uriuri,boolean notifyForDescendents,Content Observer observer) 방법으로 A 프로그램의 데이터 변화를 감청합니다
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// uri
getContentResolver().registerContentObserver(
Uri.parse("content://com.android.xiong.ConentProviderTestA.firstContentProvider/userinfo"), true,
new SmsObserver(new Handler()));
}
registerContent Observer의 세 번째 파라미터는 감청 실례입니다.Content Observer 클래스를 계승하고 onChange (booleab self Change) 방법을 다시 써야 합니다. 이 방법은 Uri의 Content Provider 데이터를 감청할 때 이 방법을 터치합니다.
// ContentOberver
private final class Observer extends ContentObserver {
public SmsObserver(Handler handler) {
super(handler);
}
@Override
public void onChange(boolean selfChange, Uri uri) {
// ( )
Cursor cursor = getContentResolver().query(
Uri.parse("content://com.android.xiong.ConentProviderTestA.firstContentProvider/userinfo"), null, null, null, null);
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ContentProvider 데이터 변경 수신프로그램 A가 insert, update, delete를 실행할 때 getContext () 를 통과합니다.getContentResolver().notifyChange(uri,null) 방법은 이 Uri에 등록된 모...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.