Android学习笔记(三)

本文介绍了Android中的ContentProvider用于跨应用数据交换,强调了android:authorities的重要性。接着讨论了Service的特性,指出Service不应直接处理耗时任务,推荐使用IntentService。还提到了静态代码块的作用,getResources().getStringArray()的功能,以及TelephonyManager类的一些关键方法。最后,讨论了BroadcastReceiver在监听通话状态和短信管理中的应用,以及PendingIntent的概念。
摘要由CSDN通过智能技术生成

ContentProvider简介

  ContentProvider是不同应用程序之间进行数据交换的标准API,当一个应用程序需要把自己的数据暴露给其他程序使用时,该应用程序便可通过提供ContentProvider来实现,其他应用程序就可通过ContentResolver来操作ContentProvider暴露的数据。如果某一应用程序通过ContentProvider暴露了自己的数据操作接口,则不管该应用程序是否启动,其他应用程序都可以通过该接口来操作该应用程序的内部数据,包括增加、删除、修改、查询数据。

android:authorities属性

   定义好的ContentProvider类必须在AndroidManifest.xml里声明后才能使用,声明中必须添加授权属性

android:authorities,相当于为该ContentProvider指定域名,Content uri中content://authority/optionalPath/optionalId的authority部分便是android:authorities属性指定的值。属性值定义的方法为包名+ “.”+ 该ContentProvider的名称。

Service本身存在的两个问题

1. Service不会专门启动一条单独的进程,Service与它所在应用处于同一个进程中。

2. Service不是一条新的线程,因此不应该在Service中直接处理耗时的操作,耗时的操作应该开启一个新的线程来处理。

处理耗时任务的问题

如果就开发这需要在Service模块中处理耗时任务,一般是在Service中另外启动一条新线程来处理,但不能在其他应用程序组件中启动子线程来处理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值