伙计们,
我正在开发一个项目,要求应用程序启动不会显示任何屏幕,但会启动一个发送短信的后台进程。我刚刚开始使用android,所以我需要一些指针
a) 如何在没有屏幕但只有后台进程的情况下启动应用程序?
b)如何从该后台进程产生一个线程(我假设我们需要在这里产生一个线程)将自动发送短信?
提前致谢!
伙计们,
我正在开发一个项目,要求应用程序启动不会显示任何屏幕,但会启动一个发送短信的后台进程。我刚刚开始使用android,所以我需要一些指针
a) 如何在没有屏幕但只有后台进程的情况下启动应用程序?
b)如何从该后台进程产生一个线程(我假设我们需要在这里产生一个线程)将自动发送短信?
提前致谢!
在您的活动中使用此代码并在onCreate()
其中编写短信逻辑Service
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent=new Intent(this,YourService.class);
startService(intent);
finish();
}
您可以在生成后台进程后立即调用 finish()。您可以使用 IntentService,因为它会自动生成自己的工作线程来处理每个意图。例如:
public class MyIntentService extends IntentService {
@Override
protected void onHandleIntent(Intent intent) {
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage("phoneNumber", null, "your message here", null, null);
}
}
所以在你的活动的 onCreate() 中,你可以简单地做这样的事情:
Intent intent = new Intent(this, MyIntentService.class);
startService(intent);
不要忘记在清单中添加 android.permission.SEND_SMS 权限。
您可以通过AlarmManager类安排从 IntentService 发送消息。