`
Lucky_Man
  • 浏览: 27778 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论

Android开源项目SMSPopup学习 (二)

阅读更多

   了解了SMSPopup的相关概况后,开始研究源代码,从Google Code上check了一份最早的版本0.9.6,早期版本,核心功能有,而且代码结构很简单清晰。关于看源代码的方法,参考了网上很多人的想法,大致的意思是先从总体对代码有个了解,然后深入分析自己要学习的相关代码,否则会陷入茫茫代码中。

源码结构

   来看一下SMSPopup的项目结构

 

一共两个包,19个类,代码量不算多,貌似最新版的代码多了很多,逐个介绍下

 

包名:net.everythingandroid.smspopup    //主要功能类
ClearAllReceiver    --清除WakeLocks和启用键盘锁
Log                    --日志类,提供了打印日志的相关方法
ManageKeyguard        --管理键盘锁
ManageNotification    --管理通知
ManageWakeLock        --管理唤醒锁
ReminderReceiver    --未读消息提醒Receiver,调用ReminderReceiverService来处理
ReminderReceiverService--处理未读消息提醒,在状态栏显示图标
SmsMmsMessage        --短信及彩信实体对象
SMSPopupActivity    --弹出窗的Activity
SMSPopupConfigActivity --相关配置的Activity,程序入口
SMSPopupUtils        --获取短信及彩信相关属性,如短信的发件人,短信内容,未读短信总数等等。
SMSPopupUtilsService--将短信标为已读的Service
SMSReceiver            --接受系统短信、彩信到达的广播,并启动SMSReceiverService来处理
SMSReceiverService    --将接受到的短信或彩信展示到弹出窗口中

包名:net.everythingandroid.smspopup.preferences //自定义设置相关类
AppEnabledCheckBoxPreference    --是否启用SMSPopup
CustomVibrateListPreference        --自定义震动模式相关设置
DialogCheckBoxPreference        --自定义弹出窗样式的设置
EmailDialogPreference            --发送邮件给开发者的设置
TestNotificationDialogPreference--测试通知的设置


Mainfest

   了解一个Android应用程序最快的方法就是从Mainfest文件开始,Mainfest也是Android程序中最重要的元素。SMSPopup的Mainfest文件主要的内容如下:

1、Activity
.SMSPopupConfigActivity   ---配置窗体,程序入口
.SMSPopupActivity         ---弹出窗体
值得注意的是这两个Activity的launchMode(加载模式)属性不同,前者是singleTask,后者是singleInstance,虽然两者都是表示在Activity栈中只限定有一个实例,但还是有区别的,关于Activity的加载模式,具体可见http://android.group.iteye.com/group/blog/718835


2、Receiver
.SMSReceiver接受系统短信及彩信到达广播
.ClearAllReceiver和.ReminderReceiver见上面的描述


3、Service
.SMSPopupUtilsService、.SMSReceiverService、.ReminderReceiverService,具体描述看上面


4、Uses-permission( 应用程序权限)
从中也可以看出系统的大概功能
android.permission.RECEIVE_SMS        接收短信       
android.permission.READ_SMS            读短信
android.permission.WRITE_SMS        编辑短信
android.permission.READ_CONTACTS    获取联系人数据
android.permission.WAKE_LOCK        唤醒锁
android.permission.DISABLE_KEYGUARD    键盘解锁
android.permission.VIBRATE            震动
android.permission.RECEIVE_MMS        接收彩信

 

2
6
分享到:
评论

相关推荐

    Android开源项目SMSPopup学习 (一)

    总的来说,通过学习SMSPopup开源项目的源码,开发者可以深化对Android广播接收器、自定义通知、UI设计、数据库操作、权限管理、线程控制以及版本管理等多个核心概念的理解。这不仅有助于提高个人技能,也提供了构建...

    android开源项目.rarandroid开源项目

    在IT行业中,Android开源项目是开发者们学习、借鉴和创新的重要资源。这些开源项目提供了丰富的代码示例,有助于提升开发者的技术水平,同时也推动了整个Android生态系统的进步。下面,我们将详细探讨这些开源项目的...

    十个android 经典开源项目

    这十个Android开源项目是初学者和进阶开发者学习Android编程的重要资源,它们展示了各种实用功能和技术的应用,有助于提升编程技能和理解Android平台的工作原理。 【描述】:“十个Android经典开源项目”的完整项目...

    Android优秀开源项目[整理].pdf

    以下是一些推荐的Android开源项目及其相关的知识点: 1. **Android 示例项目**:由Android核心团队提供的15个示例项目,覆盖了从基础到进阶的各种功能,包括游戏、图像处理、时间显示和快捷方式等。通过这些项目,...

    android 10个开源项目的学习

    从该项目代码中,可以学习到很多Android安全方面的内容,这些是你在开发应用时经常需要考虑的安全问题。  10、 WordPress的Android应用  当然在最后不能不提WordPress的Android应用了,这是WordPress官方开发团队...

    经典的Android项目——SMSPopup.zip

    "经典的Android项目——SMSPopup.zip" 这个标题表明我们讨论的是一个基于Android平台的开源项目,名为SMSPopup。这个项目很可能是用来处理短信通知的,因为"SMS"通常指的是手机短信服务,而"Popup"则暗示了它可能...

    Android-SMSPopup.rar_android_android开源短信_短信阅读

    通过研究和学习Android-SMSPopup开源项目,开发者不仅可以掌握如何在Android平台上实现短信弹窗功能,还能深入理解Android应用开发的各个方面,包括系统广播、UI设计、数据库操作、权限管理等,为自己的Android开发...

    10大经典Android开源项目分享(学习android必备)

    下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握 Android内核的接口使用: 1、Android团队提供的示例项目  如果不是从学习Android SDK中提供的那些样例代码开始,可能没有更好的方法来...

    Android开源项目汇总

    在本资源包中,我们收集了一系列的Android开源项目,这些项目涵盖了从基础应用到复杂游戏开发的多个领域,为开发者提供了丰富的学习和实践材料。以下是对每个文件的详细解析: 1. **Android开源项目源码.doc**:这...

    10个经典的Android开源应用项目.rar

    这些压缩包文件包含了一些经典的Android开源项目,它们是开发者学习和参考的理想资源,涵盖了不同的功能和应用场景。让我们逐一探讨这些项目及其可能涉及的关键知识点。 1. **TorProxy和Shadow开源项目**:这两个...

    安卓Android源码——SMSPopup速读短信源码.zip

    【Android SMSPopup速读短信源码】是一个针对安卓(Android)平台的开源项目,它提供了快速查看和处理新接收短信的功能。通过分析这个源码,我们可以深入理解Android系统中的短信处理机制,以及如何自定义UI来提升...

    Android开发者应该深入学习的7个开源应用项目.rar

    值得研究的10个安卓项目源码 1.Android SMSPopup 2.Android团队提供的示例项目 3.ConnectBot 4.Foursquare 5.OpenSudoku-android 6.Pedometer 7.Remote Droid

    10个经典的Android开源应用项目

    这些开源项目代表了Android开发的多样化,涵盖了游戏、图像处理、通知管理、日程管理、远程控制、自动化等多个领域。让我们一一深入探索这些经典项目的亮点和知识点。 1. **TorProxy和Shadow开源项目**: 这两个项目...

    android关注的开源项目

    为了帮助开发者更好地理解和掌握Android开发的关键技术和实践技巧,以下将详细介绍十个值得关注的Android开源项目,这些项目不仅能够提供宝贵的实践经验,还能加深对Android系统内核的理解。 #### 1. Android团队...

    Android开发者应该深入学习的10个开源应用项目.doc

    对于Android开发者来说,深入学习开源应用项目是提升技能和拓宽视野的重要途径。以下是一些推荐的开源项目,它们涵盖了各种技术和功能,可以帮助开发者更全面地理解Android开发。 1. **Android团队提供的示例项目**...

    Android SMSPopup速读短信源码.zip

    【Android SMSPopup】是一个开源项目,其主要功能是截取手机接收到的短信内容,并在屏幕上以一个泡泡形状的浮动窗口展示,而非通过默认的系统短信应用。这个项目为开发者提供了一个很好的学习平台,让他们了解如何在...

    SMSPopup.zip_android

    《Android短信弹窗应用SMSPopup的编程解析》 在移动设备的世界里,Android系统以其开源性和灵活性赢得了广大开发者和用户的喜爱...对于想要提升Android开发技能的程序员来说,SMSPopup无疑是一个不可多得的学习资源。

    Android SMSPopup速读短信源码.rar

    通过对SMSPopup源码的分析,开发者不仅可以掌握Android短信处理的细节,还能学习到UI设计、事件处理、数据存储以及权限管理等多个方面的知识,这对于提升Android开发技能大有裨益。同时,源码实践也有助于理解...

Global site tag (gtag.js) - Google Analytics