android-contentprovider相关内容
我的内容提供商尝试在外部存储上创建文件,但它需要android.permission.WRITE_EXTERNAL_STORAGE 权限。我已将此权限添加到清单,但如果Build.VERSION.SDK_INT >= 23它无法创建文件。 因此,我希望在ContentProvider开始工作之前运行一个活动,以获得用户的许可。我怎么能做到这一点。谢谢。 注意:我不是在问如何获得运
..
Here表示SimpleCursorAdapter的API一级构造函数已弃用,建议使用LoaderManager和CursorLoader。 但是深入研究LoaderManager和CursorLoader的用法,我发现了this示例,在扩展ListFragment(我认为是片段本身的扩展)的内部类中,我们创建了一个CursorLoader。除了CursorLoader接受Uri作为参数之外
..
我制作了一个图像查看器,可以(假设)打开来自电子邮件客户端的附件,它已经正确地打开了PNG文件。特别是,我使用K9,它发送ACTION_VIEW意图(基本上)如下代码: Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMI
..
我需要为我的应用程序存储一些照片相关信息。我理解您已经可以向图像内容提供商读取/写入GPS位置和图像描述。 我还需要添加用于云同步的字段(标志),即使用‘更新’和‘需要同步’...等 我是否可以向默认图像内容提供程序添加其他列以存储这些标志?如果不是,存储它们的最佳方式是什么? 我正在考虑设置我自己的SQLite表,但因为我只需要为这些标志存储一个或两个字段,所以在我看来这似乎有点过头了
..
我正在尝试通过我的 Moto Razr 上的 Gmail 客户端共享我的内部存储文件,但每次我发送到我的测试 gmail 帐户时,我都得到了除附件之外的所有内容. 这就是我调用和启动 gmail 的方式,同时将文件添加为附件. private void saveDaily() {意图意图 = 新意图(android.content.Intent.ACTION_SEND_MULTIPLE);
..
我有一个要求通过share Intent发送一个apk文件,我也没有任何麻烦地实现了.但问题仅在通过 GMail 发送 apk 时出现,我在尝试附加时收到 permission denied.我真的不知道 GMail 发生了什么.请通过您的答案和解决方案帮助我.任何小提示和技巧也对我有用.提前致谢 我正在使用以下代码通过共享意图发送 APK: public static void app
..
我们正在尝试发布一款休闲应用的付费无广告版本,该应用目前随广告免费发布.我们将所有包名重构为com.mycompanyname.appname.pro,市场上免费的基本上没有.pro 结尾.我们还进入了我们的内容提供者并将权限更改为与包名称相同.所以“免费版"有 AUTHORITY = "com.mycompanyname.appname" 而且“无广告付费版有 AUTHORITY = "c
..
我已设置 Gradle 以将包名称后缀添加到我的调试应用程序中,这样我就可以在一部手机上拥有我正在使用的发布版本和调试版本.我引用了这个:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Types 我的 build.gradle 文件如下所示: ...安卓{...构建类型{调试{package
..
是否可以转换短信表日期值,例如1293457709636(毫秒)到有意义的日期时间值. 解决方案 就做吧 long ms = 1293457709636;//或者你从短信中读到的任何内容日期 dateFromSms = 新日期(毫秒);
..
我需要将格式为“dd/mm/yyyy"的字符串转换为长类型.为了将值传递给 android.calendarProvider. 目前我有: 日历日历 = Calendar.getInstance();长 startEndDate = 0;日历 currentDateInfo = Calendar.getInstance();currentDateInfo.set(calendar.get(
..
目标:从 XML 数据刷新数据库 过程: 开始交易 删除表中的所有现有行 根据解析的 XML 的每个主要元素插入行到主表中并获得 PK 每个主要元素的每个子元素插入记录到第二个表中,提供上一步的 FK 提交交易 就数据库操作而言,这是非常标准的东西.问题是 CRUD 操作不是在 ContentProvider 内完成,而是使用 ContentResolver 所以插入看起
..
我们有一个 JUnit 测试类,它扩展了 ActivityInstrumentationTestCase2.测试(以及我们正在测试的类)使用扩展 ContentProvider 的 CommentContentProvider 来访问 SQLite 数据库,我们得到一个 NullPointerException [下面的完整堆栈跟踪] 在提供程序上运行查询时. 我们实例化一个 MockCon
..
我应该怎么做才能让我的内容提供者返回带有记录计数的 _count 列?文档说它是自动的,但也许它只需要一些内置的内容提供者.对数据库运行查询似乎不会返回它. 解决方案 如果您使用的是 ContentProvider.query(),则返回一个 Cursor.调用 Cursor.getCount() 获取返回游标中的记录数.
..
我正在尝试检测何时发送短信.我在网上和 StackOverflow 上搜索过,似乎都是相同的解决方案.我有一个简单的活动,它启动一个服务,在服务中我试图检测何时发送短信: MainActivity.java import android.os.Bundle;导入 android.app.Activity;导入 android.content.BroadcastReceiver;导入 and
..
我已经在线阅读了所有关于构建搜索界面和添加自定义建议的文档……但我仍然不清楚这是如何工作的.该文档说我必须“为您的建议构建一个表(例如在 SQLiteDatabase 中)并使用所需的列格式化该表".我假设系统最终会自己用适当的建议填充这个表......但是哪个进程/类对此负责,以及实际插入何时发生(在用户进行任何查询之前,在用户进行了查询等)? 虽然我在这里问一个问题,但如果有人能澄清 A
..
我想从图库中选择图片并将其复制到 SDCard 的其他文件夹中. 从图库中选择图像的代码 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);photoPickerIntent.setType("image/*");startActivityForResult(photoPickerIntent, REQUEST_CODE_C
..
我正在尝试让我的 ContentResolver 运行此查询: select * from myTable limit 1 offset 2 ContentResolver 中唯一的 query 方法是: resolver.query(uri,projection, selection, selectionArgs, sortOrder); 我试过了: final Cursor c =
..
有很多答案和教程使用 InsertHelper 来做SQLiteDatabase 中的快速批量插入. 但是 InsertHelper 自 API 17 起已弃用. 现在在 Android SQLite 中批量插入大量数据的最快方法是什么? 到目前为止,我最担心的是 SQLiteStatement 不是使用起来非常舒服,其中 InsertHelper 具有绑定列和绑定值,这有点微不足道
..
关于 Android 内容提供者的文档 描述了使用 ContentResolver,从 getContentResolver() 获取,用于访问内容. 然而,还有一个 ContentProviderClient,可以从 getContentResolver().acquireContentProviderClient(authority) 获得.它似乎提供了或多或少与 ContentReso
..
我正在浏览我的一些代码,但我意识到我实际上并不知道如何将 CursorLoader 和 LoaderManager 与 CursorAdapter 组合一起使用> 连接.这是我感到困惑的部分. agendaAdapter = new MyAgendaAdapter(this, null);makeProviderBundle(new String[] {"_id", "event_name",
..