貌似这个launcher.db并没有做成contentprovider这样一个公共接口来给其他应用程序访问,我现在要做的是在第三方应用程序中需要获取launcher.db中favortes这个表的数据。
   求高人指点!

解决方案 »

  1.   

    用DDMS把launcher.db文件pull出来,再用sqlite数据库查看工具打开就可以看了
      

  2.   

    我的意思是在第三方APP中,用代码获取favoritess这个表中各个属性的字段值,不用DDMS这个插件导出!但是,貌似技术文档中并没有给出这个表的URI,也没有把这个表做成contentprovider提供insert,update,delete和query的接口
      

  3.   

    查看源码http://android.git.kernel.org/?p=platform/packages/apps/Launcher.git;a=blob;f=src/com/android/launcher/LauncherProvider.java;h=a27b7466723fa76f89c99cc31d5b0ee8a7814943;hb=e5b142656c8afcba1c9d045b588c7717b3a22107
    发现一个貌似可以链接到launcher.db文件中favorites这个表的URI,
    Uri.parse("content://" + Settings.AUTHORITY +"/old_favoritesnotify=true");
    经过下列语句测试不行:
       Cursor cursor = getContentResolver().query(Uri.parse("content://" + Settings.AUTHORITY +"/old_favorites?notify=true"), null, null, null, null);
            String [] temp=cursor.getColumnNames();
            for (int i=0;i<temp.length;i++)
            System.out.println(i+":"+temp[i]);
            cursor.close();
    调试后返回的cursor为null,给出空指针的错误,请高人参考源码指点下...
       源码中这个URI所指向的内容到底是什么?
      

  4.   

     一个应用程序可以调用其他应用程序的activity,你可以间接的去访问这个数据库!通过其他应用程序来返回你想要的结果!
      

  5.   

     Cursor cursor = getContentResolver().query(Uri.parse("content://" + Settings.AUTHORITY +"/old_favorites?notify=true"), null, null, null, null);
    你把column的参数传是null 返回值当然是null