MobileApp > Android > Content Provider


竇シ弱さ繝ウ繝繝ウ繝医励Ο繝舌う繝 縺ォ 繧「繧ッ繧サ繧ケ縺吶k譁ケ豕

1. 繧ウ繝ウ繝繝ウ繝医励Ο繝舌う繝蛻ゥ逕ィ縺ョ螳夂浹

1.1 繧「繧ッ繧サ繧ケ讓ゥ繧定ィュ螳壹☆繧

縲縲繝槭ル繝輔ぉ繧ケ繝医ヵ繧。繧、繝ォ縺ォ繧「繧ッ繧サ繧ケ讓ゥ繧貞ョ溯」縺吶k蠢隕√′縺ゅk
縲縲萓具シ蛾崕隧ア蟶ウ繧「繧ッ繧サ繧ケシ啾ndroid.permission.READ_CONTACTS

縲螳滄圀縺ョ繝槭ル繝輔ぉ繧ケ繝医ヵ繧。繧、繝ォ縺ョ萓

   <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
   <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
   <uses-permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM" />
   <uses-permission android:name="android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS" />
   <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
   <uses-permission android:name="android.permission.INTERNET" />
   <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


1.2. 繧「繧ッ繧サ繧ケ蜃ヲ逅繧貞ョ溯」縺吶k

縲縲菴ソ逕ィ縺吶kURI繧呈欠螳壹☆繧
縲縲萓具シ蛾崕隧ア蟶ウ縺ョ蝣エ蜷茨シ喞ontent://contacts/people/ = android.provider.People.CONTENT_URI
縲縲"content://"+繝代ャ繧ア繝シ繧ク蜷+"."+繧ッ繝ゥ繧ケ蜷+"/"+繝繝シ繧ソ繧ォ繝繧エ繝ェ+"/"+繝繝シ繧ソ縺ョid

   //譛蛻昴ョ繝ャ繧ウ繝シ繝峨r蜿門セ
   final Uri uri = ContentUris.withAppendedId(android.provider.Contacts.People.CONTENT_URI, 1);
   final Cursor result = managedQuery(uri, null, null, null, null);
   //蜷榊燕繧呈シ邏阪@縺溷励ョ繧、繝ウ繝繝繧ッ繧ケ繧貞叙蠕
   final int index = result.getColumnIndex(android.provider.Contacts.People.NAME);
   //譛蛻昴ョ隕∫エ繧貞叙蠕(譛ャ蠖薙ッ謌仙粥縺励◆縺九←縺縺九メ繧ァ繝繧ッ縺吶∋縺阪□縺御セ九◆繧√@縺ェ縺)
   result.moveToNext();
   final String name1 = result.getString(index);


2. 讒倥縺ェ繧ウ繝ウ繝繝ウ繝医励Ο繝舌う繝

2.1 Media Provider 隱ュ譖ク

縲縲繝輔ぃ繧、繝ォ縺ョ譖ク縺崎セシ縺ソ譁ケ豕
縲縲a.繧ウ繝ウ繝繝ウ繝医励Ο繝舌う繝縺ォ譬シ邏阪@縺溘>繝輔ぃ繧、繝ォ縺ョ螻樊ァ繧定ィュ螳壹☆繧

   //螟夜Κ繝。繝繧」繧「繧呈欠螳
   Uri media = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
   //菫晏ュ倥☆繧九う繝。繝シ繧ク螻樊ァ繧定ィュ螳
   ContentValues values = new ContentValues();
   values.put(MediaStore.Images.Media.DISPLAY_NAME,name);
   values.put(MediaStore.Images.Media.MIME_TYPE,"image/jpeg");

縲縲b.繧ウ繝ウ繝繝ウ繝医励Ο繝舌う繝縺九i譬シ邏埼伜沺繧貞叙蠕励@縲√◎縺薙↓螳溘ヵ繧。繧、繝ォ繧呈砂縺倩セシ繧

   //繧、繝。繝シ繧ク繧呈シ邏阪☆繧矩伜沺繧堤「コ菫昴@縺ヲ縲√◎縺ョURI繧貞叙蠕励☆繧
   ContentResolver r= getContentResolver();
   Uri imageUri = r.insert(media,values);
   try{
       //蜿朱鹸縺励◆Uri縺九i繧「繝励ヨ繝励ャ繝医せ繝医Μ繝シ繝繧貞叙繧雁コ縺
       OutputStream out = r.openOutputStream(imageUri);
       bimap.compress(Bitmap.CompressFormat.JPEG,50,out);
   } catch (FileNotFoundException e) {
       Log.e("HelloContentsProviders" , e.toString() );
       return null;
   }
   


縲縲Back

     




Front page   Edit Freeze Diff Backup Upload Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes