【问题标题】:Preventing the app to terminate?阻止应用程序终止?
【发布时间】:2015-04-21 06:36:14
【问题描述】:

我正在处理后台任务。

如果我按一次主页按钮 应用程序将调用 DidEnterBackground,我可以在这里运行任何东西 - 好的

如果我按主页按钮两次并将应用程序滑出屏幕,完成它,WillTerminate 将被调用,然后,应用程序死亡,我无能为力了。

在 Android 上,我可以做到并保持应用运行,而无需在 android 的应用切换器上显示它。 有办法吗?

以及每次我终止应用程序时如何重新打开应用程序(每次调用 WillTerminate 时)。

【问题讨论】:

    标签: c# ios background xamarin terminate


    【解决方案1】:

    你无法避免被用户杀死。苹果的理念是,用户是“总司令”,他可以决定在他想要的时候杀死你的应用程序(并且杀死必须是真实的,没有隐藏的进程)。 应用的所有后台任务都将随之终止,您无法撤销用户的决定(即自动重启)。

    我没有为您的问题找到简单的解决方案。我唯一能想到的就是在特定任务开始时向用户发送一条大警报消息,说:

    “在此操作运行时不要从切换器中终止此应用程序...”

    或者,保存后台进程的状态并在下次运行应用时重新启动它。

    【讨论】:

    • 所以我无法开发应用程序...在我工作的公司中,我们正在开发个人安全应用程序,并且应用程序一直在等待外部设备通过网络发出命令,如果我它我做不到。我只能使用安卓版本
    • 现在这对我来说是个大问题......我可以做一个像远程通知这样的过程吗?当我触摸远程通知时,应用程序打开...但我认为这是与 iPhone 相关的,我无法访问它,对吧?
    • 是的,您可以使用远程通知(您需要一个真实的设备进行测试)。请记住,如果用户愿意,他可以为您的应用禁用远程通知(但您可以向他解释,在这种情况下,您的应用变得无用)。
    • 我有另一个想法......我可以制作一个像服务一样的应用程序吗?我的外部设备通过蓝牙与 iPhone 通信...我可以创建蓝牙服务吗?我的意思是,创建一个应用程序和一个服务......该应用程序可以在后台,激活,终止并且服务永远不会被终止?这存在吗?如果是,如何?
    • 不,我不认为。在 iOS 中不存在类似“android 服务”的东西。
    猜你喜欢
    • 1970-01-01
    • 2014-09-03
    • 1970-01-01
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多