在应用暂停时从窗口小部件打开应用程序

时间:2016-08-22 06:14:39

标签: android android-widget

我想通过每次从小部件执行onCreate函数来打开应用程序活动,即使应用程序暂停也是如此。

以下代码来自小部件配置活动:

views.setImageViewResource(R.id.img_widget,R.drawable.feed_detail_share);
            Intent defineIntent = new Intent(ConfigurationActivity.this,EditActivity.class);
            defineIntent.putExtra("from_widget",true);
            PendingIntent pendingIntent1 = PendingIntent.getActivity(ConfigurationActivity.this,0 /* no requestCode */, defineIntent, 0 /* no flags */);
            views.setOnClickPendingIntent(R.id.img_widget, pendingIntent1);

这是我的应用程序的活动,它在小部件上执行onClick:

 Intent intent =getIntent();
    if(intent.hasExtra("from_widget")) {
        boolean flag = intent.getBooleanExtra("from_widget", false);
        Log.e("tag", "==========flag fromm the widget==============" + flag);
    }else{
        Log.e("tag","=========no flag from tag======");
    }

如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

喜欢这个希望它会对你有用

Bundle bundle = getIntent().getExtras();
        if(bundle !=null){
        boolean flag = intent.getBooleanExtra("from_widget", false);
        }

答案 1 :(得分:0)

我自己找到了解决方案。

Intent defineIntent = new Intent(context, EditActivity.class);
    defineIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

在EditActivity中

 @Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);     
    if(intent.hasExtra("from_widget")) {           

    }else{

    }
}