如何在推送通知到来时从sqlite更新后台片段?

时间:2015-03-27 14:19:29

标签: android sqlite android-fragments push-notification

我正在使用fragement并希望在推送通知来自服务器时从sqlite更新片段中的listview的ui。

这是我的广播接收器代码,我正在更新我的片段。使用此代码,我的片段正在更新,但是当我将进行另一项活动并获得推送通知时,我的应用程序正在崩溃。

private void registerLocalBroadCastReciever() {
    LocalBroadcastManager.getInstance(this).registerReceiver(
            mMessageReceiver, new IntentFilter("RefreshList"));

}

private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {

        /*
         * If employee onboard
         */
        String onBoardId = intent.getExtras().getString("ONBOARDING");
        if(!onBoardId.isEmpty()){               
            try {
                /*if(MapWindow.mMapWindowRunStatus){
                    MapWindow.mMapWindowRunStatus = false;
                    MapWindow.getInstace().finish();
                }*/

                DBHelper.getInstance(getApplicationContext()).
                    updateCheckedBoardStatus("C", onBoardId, true);
            } catch (Exception e) {
                // TODO: handle exception
            }                           
        }

        TaskFragment tf = (TaskFragment) mTabPagerAdapter
                .getRegisteredFragment(TabsPagerAdapter.TASKFRAGMENT);
        final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        if (tf != null) {

            ft.detach(tf);
            ft.attach(tf);
            ft.commit();

            tf.loadTasks(false);
            tf.refreshTaskList();

        }
    }
};

0 个答案:

没有答案