【问题标题】:I don't want my app to appear on the chooser dialog when opening URL's打开 URL 时,我不希望我的应用出现在选择器对话框中
【发布时间】:2016-08-24 04:02:56
【问题描述】:

我的操作栏上有一个操作按钮,单击时会打开一个固定的 url,它工作正常,但我不希望我自己的应用程序出现在选择器对话框“完成操作使用”中,它应该只显示手机默认值浏览器(如 Chrome 或 Mozilla),实际上它显示 Chrome 和我的应用程序作为打开 url 的选项。我从这里实现了这段代码:http://developer.android.com/intl/es/guide/components/intents-common.html

这是我的代码:

//Manifest.xml

<activity
        android:name="pepubli.com.Controlador.Ciudad_Escogida"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <data android:scheme="http"/>
            <category android:name="android.intent.category.DEFAULT" />
            <!-- The BROWSABLE category is required to get links from web 
            pages. -->
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>
    </activity> 

//Ciudad_Escogida.Java

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if(item.getItemId() == R.id.web_page){

        Uri webpage = Uri.parse("http://www.pepubli.com");
        Intent intent = new Intent(Intent.ACTION_VIEW, webpage);
        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivity(intent);
        }

    }
    return super.onOptionsItemSelected(item);
}

【问题讨论】:

标签: java android xml


【解决方案1】:

从您的应用程序清单中删除这一行。

 <category android:name="android.intent.category.BROWSABLE" />

也删除

<data android:scheme="http"/>

替换

<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.DEFAULT" />

<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />

所以你的意图过滤器应该是这样的

  <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
 </intent-filter> 

【讨论】:

  • 在点击任何链接时可用于打开我们的应用程序,所以请您删除此行,清理并构建您的应用程序并再次检查@user4216713。
  • 它现在可以工作了,我只是在删除 ...BROWSABLE 和 后重建了应用程序
  • 如果我的回答有帮助请采纳。 @user4216713
  • 所以当点击操作按钮时会自动打开Chrome,选择器对话框没有出现,我猜是因为我的手机只有一个浏览器(Chrome),所以,如果我也有Mozilla(Mozilla和 Chrome)在我的手机选择器对话框应该再次出现,对吗?
  • 我也应该替换这些行吗?它就像现在一样工作
猜你喜欢
  • 1970-01-01
  • 2020-02-15
  • 1970-01-01
  • 1970-01-01
  • 2021-11-24
  • 1970-01-01
  • 2021-01-08
  • 1970-01-01
  • 2019-05-22
相关资源
最近更新 更多