【问题标题】:Browser.EXTRA_APPLICATION_ID not working in ICSBrowser.EXTRA_APPLICATION_ID 在 ICS 中不起作用
【发布时间】:2012-04-11 17:01:30
【问题描述】:

从我的服务启动时如何重用 Browser.apk 的选项卡?下面是我的代码,但它在 ICS(平板电脑)中不起作用。

// ICS --> 即使设置了 EXTRA_APPLICATION_ID,浏览器也不会重用选项卡。

public class MyService extends IntentService {
    ....
    mBrowserIntent = new Intent(Intent.ACTION_VIEW);
    mBrowserIntent.setFlags(Intent.FLAG_FROM_BACKGROUND | 
        Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_NEW_TASK);
    mBrowserIntent.putExtra(Browser.EXTRA_APPLICATION_ID , this.getPackageName());
    mBrowserIntent.setData(page.getAddress());
    startActivity(mBrowserIntent);

}

// HC --> 即使 EXTRA_APPLICATION_ID 未设置它重用选项卡。

public class MyService extends IntentService {
    ....
    mBrowserIntent = new Intent(Intent.ACTION_VIEW);
    mBrowserIntent.setFlags(Intent.FLAG_FROM_BACKGROUND | 
        Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_NEW_TASK);
    mBrowserIntent.setData(page.getAddress());
    startActivity(mBrowserIntent);

}

// 相关:

9221725

【问题讨论】:

    标签: android browser android-intent


    【解决方案1】:

    感谢@aimango 的回答。这是修复。适用于平板电脑(ICS 和 HC)。

        mBrowserIntent = new Intent(Intent.ACTION_VIEW);
        mBrowserIntent.setPackage("com.android.browser");
        mBrowserIntent.setFlags(Intent.FLAG_FROM_BACKGROUND | Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_NEW_TASK);
        mBrowserIntent.putExtra(Browser.EXTRA_APPLICATION_ID , "com.android.browser");
        mBrowserIntent.setData(page.getAddress());
        startActivity(mBrowserIntent);
    

    【讨论】:

      猜你喜欢
      • 2012-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-22
      • 2012-05-09
      • 1970-01-01
      • 2019-01-31
      相关资源
      最近更新 更多