2011-01-22 73 views
2

我试图围绕这个问题寻找答案,并且我已经发现了一些问题的不同部分,但我仍然无法破译它是否有可能或者至少在我们非常小的初学者操作的范围内)。我会解释他和我希望达到什么目的,只是一个相当简单的回应,或者一些关于可能性的文献的链接将非常感激。在没有本地消息应用程序的情况下发送和接收短信

我不是在寻找某人不得不泄漏一些代码或类似的东西,因为我意识到我的请求会有些模糊(因为我不想太多地提供我们的应用程序的内容,我们将简单地称为Alpha),但也因为我对程序世界的知识非常少(我比设计更多地落后于设计和其他一切)。

我们希望能够在我们正在创建的应用程序内发送和接收SMS短信,而无需处理本地消息应用程序。我们希望这样做,因为(至少在HTC手机中),没有选择可以轻松“复制”收到的单个短信。在HTC手机上,当你长时间按下单个短信时,复制信息的能力根本就不存在(但它在三星,我不确定摩托罗拉,所以我认为这是Sense UI限制) 。

因为我们需要一种简单的方法将接收到的文本消息移动到我们的应用程序中,并且由于没有简单直观的方式(至少不是HTC业主),我们不得不尝试其他方式这样做。因此,我们想知道是否可以在我们的应用程序中创建自己的小文本消息区域,以便只有与我们的应用程序相关的文本消息才会显示在应用程序中,而不会先在本地消息应用程序中弹出。

或者,是否可以在长按单个文本后弹出的“消息选项”中添加一个功能,允许用户“发送至Alpha应用程序”?

同样,我知道这可能是一种模糊的,或不是最容易遵循的,我希望我有更多的编程知识将其用于更具体的术语。

我是Android开发领域的新手,我正在创建一个Android应用程序。

回答

3

是的,这是完全有可能的 - 用于接收只实现一个监听器,并把它添加到您的manifest.xml文件像这样:

<receiver android:name=".MyListener"> 
    <intent-filter> 
     <action android:name="android.provider.Telephony.SMS_RECEIVED"/> 
    </intent-filter> 
</receiver> 

这告诉你要能够接受Android框架和处理所有的短信。

这里有一个文章,我发现,如何谈判: http://www.devx.com/wireless/Article/39495/1954

+1

还检查了这个回答如何阻止他们出现在主应用程序中: http://stackoverflow.com/questions/1741628/can-we-delete-an-sms-in-android-before-it -rebox-the-inbox/2566199#2566199 – 2011-01-22 23:41:41

2

随着安卓1.6的, 传入SMS消息广播(android.provider.Telephony.SMS_RECEIVED)交付为“有序广播” - 也就是说,您可以告诉系统哪些组件应该首先接收广播。

如果您在SMS侦听中定义了android:priority属性,则会在本机SMS应用程序之前收到通知。

在这里你可以根据你的需求来检查它,然后你可以取消广播,防止它传播到其他应用程序。

相关问题