我在4.4.2和4.4.3设备上发生了崩溃(虽然我不确定这是一个API问题),但在某些ParsePushBroadcastReceiver
中,以下代码会导致{{1}在NullPointerException
电话的深处。
startActivities
我已经尝试过测试以查看上下文是否为null,但是,Intent实例化会抓住它。值得注意的是,此应用程序正在使用Intent intent = new Intent(context, SomeActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
TaskStackBuilder.create(context)
.addParentStack(SomeActivity.class)
.addNextIntent(intent)
.startActivities();
。
此崩溃的崩溃日志:
Parse Push
答案 0 :(得分:12)
我无法解决此问题,因为我怀疑这可能是4.4。*设备特有的错误。作为替代方案,我将PendingIntent.getActivities
的使用替换为通过final Intent parentIntent = new Intent(context, ParentActivity.class);
parentIntent.putExtra(ParentActivity.EXTRA, extraValue);
final Intent childIntent = new Intent(context, ChildActivity.class);
childIntent.putExtra(ChildActivity.EXTRA, extraChildValue);
childIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
final Intent[] intents = new Intent [] {parentIntent, childIntent};
PendingIntent pendingIntent = PendingIntent.getActivities(context, INTENT_REQUEST_CODE, intents, PendingIntent.FLAG_ONE_SHOT);
pendingIntent.send();
创建我的活动。就我而言,这提供了相同的功能,它是一个简单的替代品。也许你会发现它也很有用。
<input type="checkbox" ng-repeat="bx in boxes" ng-model="bx.value" ng-change="boxChecked($index, bx.value)">