相关疑难解决方法(0)

从应用程序托盘中删除应用程序后,将终止服务进程

我在启动活动时启动服务(或重新启动正在运行的服务),使用:

Intent intent = new Intent(this, MyService.class); startService(intent);

稍后基于某些操作,相同的活动将使用绑定到服务

bindService(new Intent(this, MyService.class), mConnection, Context.BIND_AUTO_CREATE);
Run Code Online (Sandbox Code Playgroud)

当活动被破坏时,我打电话

unbindService(mConnection);
Run Code Online (Sandbox Code Playgroud)

早些时候,当我从应用程序托盘中杀死相同的活动/应用程序并在运行的应用程序下显示"消息1进程1服务正在运行"时,该服务用于重新启动.

现在,该服务不会在杀死相同的活动/应用程序时重新启动.

我收到消息"0进程1服务正在运行",这意味着该服务实际上没有运行.

应用程序关闭时,服务不会重新启动.我的申请包含一项活动.在系统引导后启动时,服务也会成功启动.

当我使用startService()启动它时,为什么服务进程会被杀死?

编辑

从应用程序托盘关闭应用程序后,该服务用于重新启动.但现在突然使用相同的代码,它没有.当我关闭它时,它也会与其他应用程序一起发生.例如.

在此输入图像描述

android android-service

30
推荐指数
3
解决办法
4万
查看次数

Android服务:流程与非流程

将服务放在单独的流程中或将其保留在应用程序的主流程中有什么实际区别?每个场景将用于什么?

service android process

17
推荐指数
2
解决办法
9478
查看次数

getApplicationContext()在Service中返回null

我有一个服务在它自己的过程中,我已经在清单中声明它:

   <service
        android:name="com.discountscatcher.util.PointService"
        android:configChanges="orientation"
        android:process=":pointservice" >
    </service>
Run Code Online (Sandbox Code Playgroud)

onStartCommand我试图得到一个ApplicationContext,但它总是返回null,我能忘记什么?

    public int onStartCommand(Intent intent, int flags, int startId) {
    android.os.Debug.waitForDebugger();
    Context mContext = getApplicationContext();
    return Service.START_STICKY;
}
Run Code Online (Sandbox Code Playgroud)

我这样开始:

    startService(new Intent(getApplicationContext(), PointService.class));
Run Code Online (Sandbox Code Playgroud)

Myactivity OnCreate

有任何想法吗?

service android android-context

8
推荐指数
1
解决办法
9871
查看次数

何时需要在应用程序中创建单独的进程?

我正在阅读Android开发人员博客Process and Threads中的一篇文章,该文章讨论了为Application的特定组件创建新流程.但我无法理解何时在我的应用程序中创建新进程成为绝对需要.能否帮助我理解我在这方面的疑虑.

  1. 作为开发人员,我觉得我需要为Android组件设置一个单独的进程?
  2. 引入新流程是否会对应用程序的整体性能产生任何副作用?

非常感谢任何其他信息.

谢谢,SKU

android

6
推荐指数
1
解决办法
1374
查看次数