Notepad实例学习

总结一下个人经验,高手飘过

1.mimeType-> ContentProvider.getType()    参考sdk

2.mimeType 不一定非是"vnd.company_name.cursor.dir",可以自定义,测试通过。 vnd的意思是vendor-specific:某私人机构专有协议。 

3.notepad例子中 livefolder查询notes列表的uri path为"/livefolder/notes"与main activity查询notes列表的uri path"/notes"不同,是为了映射livefolder的字段LiveFolder.NAME.

4.若contentProvider中为SQLiteQueryBuilder设置的projection的key与value不同,则value必须为"[value] AS [key_name]",因为SQLiteQueryBuilder中拼sql时并没有帮开发者完成这个步骤。

5.livefolder Activity是在创建快捷方式时调用,断点调式可知。

6.livefolder Activity中

if (LiveFolders.ACTION_CREATE_LIVE_FOLDER.equals(action)) 是否需要有待商榷,个人认为肯定是相等的,根本不需要这个判断。

7.qb.appendWhere(Notes._ID + "=" + uri.getPathSegments().get(1));获得note_id可以用 uri.getLastPathSegment() 替代

8.provider的 insert(Uri uri, ContentValues initialValues) 方法中,values = new ContentValues();

  为什么不用传进来的initialValues而重新new 一个values?因为在后面的代码修改了values对象,若用原来的initialValues,则initialValues被改变数据不一致了。

posted on 2011-08-26 23:28  摇光  阅读(369)  评论(0编辑  收藏  举报

导航