在Titanium中添加标志意图

时间:2015-01-20 10:05:11

标签: android push-notification titanium appcelerator

我开发了一个针对android的app / appcelerator的应用程序,并且发现如果应用程序被“强制停止”,默认情况下推送通知将不会到达设备 - http://developer.android.com/about/versions/android-3.1.html但是文档中有一个标记可以帮助我:

  

FLAG_INCLUDE_STOPPED_PACKAGES - 在已解决的潜在目标列表中包含已停止的应用程序的意图过滤器。

此标志用于意图,但我无法弄清楚如何在钛平台上正确设置它。

任何人都可以帮助我吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

您应该使用Titanium for Android意图提供的addFlags(flags)方法(或者使用setFlag(flag))。它将标志添加到intent已经拥有的标志中。

简短的例子:

var intent = Ti.Android.createIntent({
    action: Ti.Android.ACTION_MAIN,
    url: 'activity1.js'
});
intent.addFlags(FLAG_INCLUDE_STOPPED_PACKAGES); //WARNING: READ ON BELOW
Ti.Android.currentActivity.startActivity(intent);

不幸的是Titanium does not support你需要的旗帜。现在您有三个选择:

  1. 告知Titanium开发者缺少该标志,并要求他们将其包含在将来的版本中。但这可能需要很长时间。
  2. 尽量完全避免
  3. 尝试使用标志具有的常量值:0x00000020。我不知道Titanium是否可以通过标志常量来解决这个问题,但你应该试一试。