Android

时间:2015-10-15 20:14:34

标签: java android sms

对于Android来说,我是一个完整的新手,从来没有触及过我生活中的一段Android代码。我正在尝试在本学期为我的软件工程项目在Android中构建一个SMS应用程序(是的,教授已经要求构建这个SMS应用程序)。他只给了我们两个星期的时间来完成这个项目,他期待着一个完整的软件开发过程,github文档,团队协作,每个人都在进行。列表还在继续。

我在团队中的具体任务是实现类似于任何股票默认SMS消息传递应用程序的对话列表。任何人都可以提供有关如何构建对话列表的分步指南,例如股票SMS应用程序中的对话列表吗?我的意思是告诉我实施哪些部分,何时何地。不一定是任何具体的代码,除非它可能是我在2周内无法弄清楚的。

我很高兴请各位专家来帮助我,并指出我需要实施的事情的正确方向,因为时间太短了。非常感谢。

提前谢谢!

2 个答案:

答案 0 :(得分:2)

两周不是很多时间,所以我假设范围将限于:

  • 显示对话列表
  • 显示每次会话的邮件列表
  • 能够发送和接收消息

我还假设您不必处理彩信,只能坚持使用短信。

幸运的是,Google已经发布了两个消息传递应用程序作为开源 - 旧的" Mms"应用程序和新的"消息"应用程式:

https://android.googlesource.com/platform/packages/apps/Mms/ https://android.googlesource.com/platform/packages/apps/Messaging/

深入研究这些代码库可能有点令人生畏,尤其是新的Messaging应用程序,但是传统的Mms应用程序为您提供了许多构建模块。

简而言之,您需要:

  • 设置权限并创建BroadcastReceiver以处理SMS传递意图(传入SMS)。一个提示是阅读一些关于什么是"默认短信应用"在Android中:http://android-developers.blogspot.se/2013/10/getting-your-sms-apps-ready-for-kitkat.html
  • 从意图中读取SmsMessage对象。挑出部件并将这些值存储到SmsProvider(请参阅Telephony.java中的公共API)。如果它尚未存在,您可能需要创建一个消息线程(对话)。
  • 使用listview和游标适配器构建活动,以从SmsProvider加载对话(线程)。
  • 在适配器中,处理游标数据并创建表示对话数据的视图,例如收件人,时间戳和代码段。然后这些将显示在列表视图中。
  • 使用listview和游标适配器创建另一个活动(或片段)以从SmsProvider加载消息。可能使用CursorLoader虽然可能需要时间来弄清楚如何设置它们。
  • 与上一个适配器一样,处理游标数据并生成表示消息的视图。
  • 在显示对话消息的activity / fragment中,创建一个EditText,用户可以在其中键入消息,还有一个按钮来处理send命令。 SmsManager.java是用于发送文本消息的公共API。如果适配器设置正确(这对CursorLoader非常方便,但您也可以对提供程序进行手动查询),它会收到通知并为新消息创建新视图。

答案 1 :(得分:1)

以下是为了执行此操作您需要了解的任务细分列表:

//显示消息列表  1.什么是对象  2.如何填充所述对象的列表  3.如何在Android中的ListView中显示列表

//发送消息  1.如何使用TextView / EditText和Button添加新屏幕  2.如何将Button绑定到Intent (不确定是否需要使用服务器代码发送消息 - 这对于为期两周的项目来说太多了)

//接收消息 //再次 - 服务器代码

这些示例和教程中的每一个都可以通过简单的Google搜索找到