在我的应用程序中,当我从应用程序退出时,它不会在后台运行并完全关闭,但我希望应用程序继续在后台运行,我该怎么办?
这是我的代码:
@Override
public void onBackPressed() {
new AlertDialog.Builder(this).setIcon(android.R.drawable.ic_dialog_alert).setTitle("Exit")
.setMessage("Are you sure you want to exit?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();
}
}).setNegativeButton("No", null).show();
}
答案 0 :(得分:1)
使用服务在后台运行应用程序:
服务是一种应用程序组件,可以在后台执行长时间运行的操作,但不提供用户 接口
答案 1 :(得分:0)
尝试下面的示例代码
public class BackHelper extends Service {
private static final String TAG = "me.trial";
@Override
public void onCreate()
{
Log.i(TAG, "Service onCreate" );
super .onCreate();
new sock().call();
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
Log.i(TAG, "Service onDestroy" );
super .onDestroy();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO Auto-generated method stub
Log.i(TAG, "Service onstart" );
return Service.START_STICKY;
}
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
Log.i(TAG, "Service onBind" );
return null ;
}
}
从您的活动中调用此服务
Intent intent = new Intent(YourActivity.this, BackHelper.class);
startService(intent);
同时添加
<service android:name=".BackHelper" />
在清单
中 <application />
代码