
要想永远不被系统kill掉,那你只能是升级成系统应用。
你的这个需求其实我也做过但是也不是%100 保证 Service 永远不被 Kill
说一下我的思路吧
1,定义一个服务在后台运行,让这个服务单独一个进程,不要和你的应用程序共享一个进程。
2在你的service的onDestroy()方法中调用 onStart() 方法。
3定义一个接口开机广播的接收器,开机就启动你的服务。
4根据的业务需求是需要定位,那肯定是需要网络的,你可以再写一个接收网络广播的接收器,当网络设置从断网到联网,就启动你的服务,开始定位。
Android Studio中,随时随地的退出程序(记得导入相应的包,可以设置自动导入所需的包的,下面的代码还没有导入包的部分):
①新建一个 ActivityCollector 类,作为活动管理器,代码如下所示:
public class ActivityCollector {
public static List<Activity> activities = new ArrayList<>();
public static void addActivity(Activity activity) {
activitiesadd(activity);
}
public static void removeActivity(Activity activity) {
activitiesremove(activity);
}
public static void finishAll() {
for (Activity activity : activities)
{
if(!activityisFinishing())
{
activityfinish();
}
}
activitiesclear();
//以下是杀死当前程序进程的代码,保证程序彻底退出。
androidosProcesskillProcess(androidosProcessmyPid());
}
}
②再新建一个类BaseActivity,并让所有活动继承这个类,也就是其他的全部活动都改为extends BaseActivity,而不是原来的extends AppCompatActivity。
public class BaseActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
superonCreate(savedInstanceState);
Logd("BaseActivity", getClass()getClass()getSimpleName());
ActivityCollectoraddActivity(this);
}
@Override
protected void onDestroy() {
superonDestroy();
ActivityCollectorremoveActivity(this);
}
}
③在你想要退出程序的页面(Activity)的setContentView(Rlayout); 下面加上如下代码,从而实现点击一个按钮退出整个程序。
Button button3 = (Button) findViewById(Rid);
button3setOnClickListener(new ViewOnClickListener() {
@Override
public void onClick(View v) {
ActivityCollectorfinishAll();
}
});
//号部分看具体情况而定
1MainActivityjava
//添加自身Activity到集合,每个activity都要添加
PublicWayactivityListadd(this);
Button exit=(Button)findViewById(Ridexit);
//退出程序事件
exitsetOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//遍历Activity集合,关闭所有集合内的Activity
for(int i=0;i<PublicWayactivityListsize();i++){
if (null != PublicWayactivityListget(i)) {
PublicWayactivityListget(i)finish();
}
}
}
});
2PublicWayjava
public class PublicWay {
//存放所有的Activity
public static List<Activity> activityList = new ArrayList<Activity>();
}
此方法可以关闭所有Activity,即实现退出程序
以上就是关于怎样让android应用永远不退出或者退出后有通知全部的内容,包括:怎样让android应用永远不退出或者退出后有通知、怎么在android实现退出功能、android 程序点击button退出程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)