最近想看看android下的数据库文件(主要是想看看存储通讯录的文件)。按照网上的教程没有查到。下面说说我的过程,纯属业余,非专业(操作系统为fedora15)。
首先用调试状态连接电脑,然后在终端下执行adb shell.su到root权限。然后cd到/data/data/com.android.providers.contacts/databases这个路径,ls -l一下。可以看到,有如下文件。这个就是存放通讯录的数据库。
-rw-rw---- app_16   app_16     470016 2011-11-22 19:06 contacts2.db
由于在这个shell下没有sqlist3这个命令,所以只好先将它拷到你电脑上,然后再查看。
先将它的权限改大,否则接下来无法移动。
chmod 660 contacts2.db后权限变为-rw-rw-rw-
再打开一个终端,adb pull /data/data/com.android.providers.contacts/databases/contacts2.db 本地目录 最后,便可以用sqlist打开了。
查看到如下结果
sqlite> .tables
_sync_state                       settings                        
_sync_state_metadata              status_updates                  
accounts                          v1_settings                     
activities                        view_contacts                   
agg_exceptions                    view_contacts_restricted        
android_metadata                  view_data                       
calls                             view_data_restricted            
contact_entities_view             view_groups                     
contact_entities_view_restricted  view_raw_contacts               
contacts                          view_raw_contacts_restricted    
data                              view_v1_contact_methods         
groups                            view_v1_extensions              
mimetypes                         view_v1_group_membership        
name_lookup                       view_v1_groups                  
nickname_lookup                   view_v1_organizations           
packages                          view_v1_people                  
phone_lookup                      view_v1_phones                  
properties                        view_v1_photos
原来这个数据库下有这么多表单。
09-29 09:24