我制作一个锁定屏幕应用程序..我有一些服务,听取短信..当短信接收命令andro-lock然后我显示一个由服务调用的锁定屏幕: 这是服务的代码:
if (tempMessage[0].toString().equalsIgnoreCase("andro-lock") && tempMessage[1].toString().equals(tempPassword.toString()))
{
//Toast.makeText(ListenSMSservice.this, "Menjalankan command andro-lock", Toast.LENGTH_LONG).show();
openDatabase();
updateStatusL();
Intent myIntent = new Intent(ListenSMSservice.this,LockScreenForm.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplication().startActivity(myIntent);
}
该代码完全有效,但是当我尝试解锁手机时我遇到了一些问题..如果我的服务收到命令并且解锁那么我必须关闭(完成)那个lockscreen.java ..我正在尝试很多代码和仍然没有用..当我的服务接收命令andro-unlock时,我必须做什么才能关闭锁屏活动?请帮忙..
else if (tempMessage[0].toString().equalsIgnoreCase("andro-unlock") && tempMessage[1].toString().equals(tempPassword.toString()))
{
//what must i do??
//any solution??
}
感谢您的帮助..
答案 0 :(得分:3)
停止活动的可能解决方案是:
Intent myIntent = new Intent(ListenSMSservice.this,LockScreenForm.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Bundle myKillerBundle = new Bundle();
myKillerBundle.putInt("kill",1);
myIntent.putExtras(myKillerBundle);
getApplication().startActivity(myIntent);
在LockScreenForm
onCreate(Bundle bundle){
if(this.getIntent().getExtras().getInt("kill")==1)
finish();
}
答案 1 :(得分:1)
您可以使用额外的活动向您的活动发送一个意图,该活动可以读取此额外内容,如果存在,则{@ 1}}本身。
此致 斯特凡