2012-01-11 52 views
0

我需要制作一个应用程序,用于捕获手机接收到的每条单一SMS,然后将该SMS转发给电子邮件地址。所以,我想知道如何执行 - 我应该把它作为服务还是作为应用程序?用户只能打开一次应用程序,并忘记它正在手机上运行。 我真的不知道该怎么如果我作出这样的服务我认为这将需要始终运行管理,是因为我没有经历过的Java程序员,SMS监听器,最好的方法?

,因此它可以“听”传入SMS的。 (如果它定期打开,则不起作用,因为在关闭时可能会遗漏某些消息)。而且我不确定这是否有可能?

,如果我做的是为应用程序,我能做到通过这种方式,效果:当默认短信应用程序接收消息 ,手机也通知我的应用程序,因此唤醒它,而不是我的应用程序cathes SMS和做的工作?

回答

1

您必须使用BroadcastReciever才能获取SMS,然后以电子邮件形式发送您可能需要编写的服务。你可以检查here

+0

谢谢你的回答,那就是我已经做到了!但问题是,当我打开应用程序,并离开手机,30-40分钟后,我看到该手机杀了应用程序,并采用了它。所以我需要做的事情,以保持应用程序始终运行,这是主要问题:( – 2012-01-11 16:51:19

+1

广播接收器永远不会被杀死,当你安装了应用程序,他们已注册,他们将永远被称为当意图过滤器匹配 – nandeesh 2012-01-11 16:53:52

+0

到目前为止,我还没有意识到,你刚刚帮助我解决了这个问题!非常感谢,现在我的应用程序在电话重启后仍能继续运行!但不幸的是,另一个问题出现了 - 我正在使用BroadcastReciever [建议](http://www.androidcompetencycenter.com/2008/12/android-api-sms-handling/)我也是,我用[this](http://www.jondev.net/articles/Sending_Emails_without_User_Intervention_ %28no_Intents%29_in_Android)发送短信到电子邮件,使用GMAIL客户端我已经把'permission.INTERNET'放在AndroidManifest.xml中,但应用程序崩溃了! – 2012-01-11 19:27:26