상세 컨텐츠

본문 제목

(안드로이드) 콘텐트 프로바이더 Call 인터페이스 (ContentProvider Call Interface)

Android

by choiDev 2019. 1. 29. 13:22

본문

콘텐트 프로바이더 Call 인터페이스 (ContentProvider Call Interface)

프로바이더는 DB 데이터 외의 공유 프레퍼런스 정보나, 특정 파일등을 공유하기 위해 다음과 같이 call 인터페이스를 제공한다.


[StudentProvider.java] 작성 소스

public class StudentProvider extends ContentProvider {
...
   ...


@Override
public Bundle call(String method,String arg,Bundle extras) {
if("getPackageName".equals(method) == true){
return getPackage();
}
return null;
}

private Bundle getPackage(){
String packageName = getContext().getPackageName();
Bundle returnData = new Bundle();
returnData.putString("return_getPackageName",packageName);

return returnData;
}


[MainActivity.java] 작성 소스

public void onClick(View v){
switch (v.getId()){
case R.id.call:
Bundle returnBundle = getContentResolver().parse(PROVIDER_URI),"getPackageName",null,null);

String providerPackageName = returnBundle.getString("return_getPackageName");

editText.setText("result : " + providerPackageName);
break;
}

}


[결과]


관련글 더보기