Android - 为我的应用程序创建一个将从网页链接打开的架构

2023-12-03

我正在尝试创建一个类似 myapp://somthing/anotherthing 的架构,如果网页或任何其他应用程序链接到该架构将打开我的应用程序。

我已将其添加到我的 AndroidManifest.xml 中以用于我的主要活动:

    <activity
        android:name="com.example.MainActivity"
        android:label="@string/title_activity_main"
        android:configChanges="orientation"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Light.NoTitleBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="myapp" />
        </intent-filter>
    </activity>

但是当我单击网页中链接到我的 app://something/another thing 的链接时,它只会给我一个页面未找到类型的错误,并且不会打开我的应用程序。

我到处看看,我发现我需要添加<data>里面有标签<intent-filter>。这里缺少什么?


在其他相关问题中搜索示例时,我找不到同时使用这两个问题的示例<action android:name="android.intent.action.MAIN" /> and <action android:name="android.intent.action.VIEW" />(后者似乎对于这种行为是强制性的)。

无论如何,两者都可以使用。这是我的工作示例:

<activity
        android:name="com.example.MainActivity"
        android:label="@string/title_activity_main"
        android:configChanges="orientation"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Light.NoTitleBar" android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.intent.action.VIEW" />

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

                <data android:scheme="myapp" />
            </intent-filter>
        </activity>

因此,以下标签似乎可以解决问题:

android:exported="true"
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

这是我在网页上使用的锚点:

<a href="myapp://somthing/anotherthing">Open the app!</a>

UPDATE:正如开发者 82 在评论中提到的,如果您这样做,应用程序图标将消失,用户将无法打开该应用程序。要解决此问题,您需要创建一个新标签来放置<data>随着default, browsable类别和view action.

The <activity>标签应如下所示:

    <activity
            android:name="com.example.MainActivity"
            android:label="@string/title_activity_main"
            android:configChanges="orientation"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Light.NoTitleBar" android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

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

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

                <data android:scheme="myapp" />
            </intent-filter>
            </activity>

让我知道是否有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android - 为我的应用程序创建一个将从网页链接打开的架构 的相关文章

  • 返回重复假期活动的日历

    我发现 当有两个帐户链接到他们的设备 并且两个帐户都同步其日历 并且两个帐户都设置为显示 Google 假日日历时 CalendarContract Instances 将每个假日返回两次 每个帐户返回一次日历 因此 在这种情况下 您会看到
  • Android Studio 3.1.3不显示布局设计预览

    自从我上次在 android studio 中创建一个新项目以来已经有一段时间了 今天当我这样做时 android studio 没有从布局预览中显示任何内容 它是一个空白窗口 并显示 没有可显示的内容 我已经尝试过了 更新了sdks工具
  • 如何发送超过160个字符的短信?

    如何在 Android 中发送大短信 我用了 SmsManager sms SmsManager getDefault sms sendTextMessage contactNos j null msgs i sentPI delivere
  • 导入的项目抛出 java.lang.ClassNotFoundException

    所以我将一个现有的项目导入到 eclipse 中 但让它工作时遇到了很多麻烦 该项目与其他三个图书馆项目一起提供 谷歌播放服务库 捕获活动 肖像二维码 As soon as I imported the project I went und
  • ListView 可以存储多少个项目?

    我是 Android 编程新手 我想知道ListView可以存储多少个项目 我在文档中搜索 但他们没有谈论这个 如果我将很多 可能是 10k 项放入 ListAdapter 中 会影响性能吗 干杯 MK ListView 在 Android
  • 单元测试定位服务

    我有一个位置跟踪服务 正在尝试对其进行单元测试 我正在尝试使用 locationManager addTestProvider 和 setTestProviderLocation 方法来实现此目的 但是 我似乎无法通过提供程序获取任何位置并
  • 自定义 listView 按随机顺序显示较少的项目

    我为我的 Android 应用程序制作了一个自定义的膨胀 listView 但 getView 方法有问题 public class BinderData extends BaseAdapter private LayoutInflater
  • 动态添加的 RemoteView 上的布局权重

    在我的小部件中 我使用以下内容将项目 R layout widget item 动态添加到我的主小部件布局中定义的 LinearLayout 中 Main widget layout RemoteViews views new Remote
  • 如何在手机解锁时显示消息

    我想制作一个应用程序 当用户解锁他 她的 Android 手机时会显示一条消息 我不知道这是否可能 如果有人有办法做到这一点 请您指出正确的方向 Only android intent action USER PRESENT action
  • DP5 7.0 - 向待处理意图添加额外内容是否会失败?

    在跟踪器上添加链接的问题 因此 我今天在我的 Nexus 5X 上安装了 DP5 Android 7 0 版本 我一直在开发一个应用程序 它使用 Android 的 AlarmManager 类在特定时间安排本地通知 在此版本之前 代码在运
  • 片段和通知:针对通知中的不同活动;取决于屏幕配置

    问题 如何决定做什么Activity a Notification如果目标可能取决于配置 屏幕尺寸 方向等 则应启动 就像人们使用时经常出现的情况一样Fragments Details 让我们考虑一下新闻阅读器示例 http develop
  • 制作教程(教练标记)叠加层。需要帮助根据另一个视图的位置移动视图

    你好 我正在尝试在教程上做一个教练标记 主程序 java public class Main extends Activity private Button button1 private int x Override public voi
  • Android 中带有传递参数的点击侦听器方法

    我是 Android 和 Java 新手 我想创建一个带有 int 参数的 onClick 方法 所以这是我的尝试 public void randomClick final int randomIndex private OnClickL
  • 加入牛轧糖热点

    我的应用程序有 2 个按钮 一个用于创建热点 另一个用于加入热点 流程是 我在其中一台设备上创建一个热点 然后尝试将其与其他设备连接 通过我的应用程序 问题是 有时我无法加入由 Nougat 设备创建的热点 它会卡在 获取 IP 地址 上
  • 连续按钮的自定义 arrayadapter 和 onclicklistener

    我有一个自定义数组适配器 我想为每一行中的按钮添加一个 onclicklistener 当我单击按钮时 我希望图像资源发生变化 一切正常 除了当我单击按钮时图像发生变化但另一行中的另一个按钮的图像也会发生变化 感谢您的帮助 这是我的代码 p
  • 从包中获取参数

    我正在尝试将参数从我的活动传递到片段 并且我正在使用以下代码 Override protected void onCreate Bundle savedInstanceState super onCreate savedInstanceSt
  • 如何获取任何已安装 Android 应用程序的清单权限

    是否可以获得任何已安装的 Android 应用程序的清单权限 感谢您的提示 让它运行 final Intent mainIntent new Intent Intent ACTION MAIN null mainIntent addCate
  • 如何使用 Android 手机通话时播放声音?

    是否可以通过编程方式与电话进行交互 例如 您可以通过程序向呼叫者播放音频吗 Google 尚未公开任何允许我们向特定正在进行的调用提供数据的 API 不过 您可以控制通话 检查这篇文章 here http prasanta paul blo
  • 在 Android 中创建硬链接和符号链接

    我正在创建一个应用程序 我想在其中使用 Android 外部内存文件系统中的硬链接和符号链接 我尝试过使用命令 Os link oldpath newpath Os link oldpath newpath 但是 当我尝试这样做时 我收到此
  • Android:警报对话框消失并执行下一个意图

    我正在使用禁用 GPS 的 AlertDialog 一旦用户启用 GPS 我就会通过 Intent 转到另一个 Activity 问题是 AlertDialog 出现 然后移动到下一个活动 然后我才能单击对话框上的任何按钮 我需要做什么才能

随机推荐

  • 如何在 python 中将图像块传输到特定图像的区域内?

    我正在制作一个游戏 我需要将我的对象复制到特定图像的区域内 我不想需要我的表面来传输这些图像 是否可以 我使用的是pygame 如果您能更好地解释您正在尝试做什么 那么将来会更好 因为它会给您更多答案 根据我的理解 你想将一个图像传输到另一
  • 将通过HTTP上传到ASP.NET的文件进一步上传到C#中的FTP服务器

    上传表格
  • jquery ajax 切断 IE 中的响应

    我正在使用jquery 表单插件它使用 jquery ajax 来完成大部分工作 我们有jquery 1 7 2 我们使用它通过 ajax 向服务器发送表单 并返回指示成功的值或返回带有验证错误的表单 我让它在 Firefox 和 Chro
  • Java BigDecimal 三角方法

    我正在开发一个数学解析器 它能够像这样评估字符串 5 b sqrt c 2 我正在使用 ANTLR 进行解析并取得了良好的进展 现在我迷上了Java课程BigDecimal并想 嘿 为什么不考虑这里的精度呢 我的问题是 Java API 没
  • 在 Django 中,如何检查用户是否属于某个组?

    我在 Django 的管理站点中创建了一个自定义组 在我的代码中 我想检查用户是否属于该组 我怎么做 Your User对象链接到Group对象通过一个多对多关系 您可以因此应用filter方法用户组 因此 要检查给定用户是否属于某个组 例
  • 检查迭代器是否有效

    有没有什么方法可以检查迭代器 无论是来自向量 列表 双端队列 是否 仍然 可取消引用 即尚未失效 我一直在使用try catch 但是有没有更直接的方法来做到这一点 示例 这不起作用 list
  • C# 定时器和内存泄漏

    我正在创建一个程序 每 2 秒检查一次目录列表 我希望这个程序能够运行数月而不会泄漏内存或需要任何人机交互 下面的程序有内存泄漏 我仍然不确定10K代表什么 这不是间隔 间隔为2k class Program static void Mai
  • ClearCase 中是否有 RTC 等效的“挂起模式”?

    我发现 RTC 中的 暂停更改设置 非常有用 而且由于我们也在使用 ClearCase 数十个用户 我想知道 ClearCase 中是否也提供该功能 如果不是 它可以由 script trigger hook 生成吗 我们使用UCM 我想解
  • 无法在 igraph 上绘制网络

    我的二进制图基于边缘列表 每个顶点都是股 票市场上的一个股票行情 例如 BARC Barclay s net full phase1 graph edgelist full phase1 directed FALSE V net full
  • 检查是否支持 UIGraphicsBeginImageContextWithOptions

    我正在开发一个 iOS 应用程序 它目前仅适用于 iOS 4 因为我多次使用以下方法 UIGraphicsBeginImageContextWithOptions 此方法仅在 iOS 4 中可用 因此我的应用程序当前崩溃 无法在 iPhon
  • Symfony 3 Twig\Extension\AbstractExtension 在生产模式下未找到错误

    我有一个在开发模式下运行良好的应用程序 但是当我在生产中运行它时会弹出 Fatal error Class Twig Extension AbstractExtension not found in C Users wackm Phpsto
  • 从 Spring 4.xxx 迁移到 Spring 5,保留 EJB 和 Web 模块

    Hi All 服务器 Websphere 9 应用程序在 Spring 4 上运行良好 我们希望迁移到 Spring 5 我们遇到了 DI 依赖注入 的问题 Spring 4 中有 EJB 模块 带有消息驱动 Bean 和 Web 模块 我
  • 清理嵌套的 mod_rewrite 语句

    我正在清理一个大 htaccess文件包含很多mod rewrite声明 混乱的最大部分来自捕获各种事件的语句 directory1 directory1 directory2 directory1 directory2 directory
  • 如何使 Laravel 雄辩地进行“IN”查询?

    我想在 Laravel Eloquent 中进行查询 就像这里的原始 MySQL 查询一样 SELECT from exampleTbl where id in 1 2 3 4 我已经在 Laravel Eloquent 中尝试过这个 但它
  • 将java对象序列化为文本文件

    我有一个java库 我想将java对象的实例保存到文本文件中 我尝试使用所有java库进行序列化和反序列化为xml http karussell wordpress com 2009 09 03 xml serializers for ja
  • 在Python中从文本文件读取多个变量的聪明方法

    我正在尝试加载存储在单个文本文件中的多个向量和矩阵 对于 numpy 该文件如下所示 VectorA 1 2 3 4 MatrixA 1 2 3 4 5 6 VectorB 3 4 5 6 7 理想的解决方案是拥有一个字典对象 例如 Vec
  • py2exe 因 pandas 导入失败

    我有一个 python 脚本 我想使用 py2exe 将其制作成可执行文件 当我尝试导入 pandas 时它失败了 这实际上是我的示例失败脚本中的全部内容 import pandas 回溯看起来像 File c users appdata
  • javascript 在数组中的对象之间保留某些属性

    我想从数组中的对象中删除每个属性 除了其中一些属性 var listToKeep name school var arrayOfObjects id abc name oh school a sport a id efg name em s
  • 模板静态成员初始化顺序

    我有一个与此处发布的上一个问题相关的问题静态字段初始化顺序假设我有以下结构 有 2 个静态成员x and y 模板类型本身 include
  • Android - 为我的应用程序创建一个将从网页链接打开的架构

    我正在尝试创建一个类似 myapp somthing anotherthing 的架构 如果网页或任何其他应用程序链接到该架构将打开我的应用程序 我已将其添加到我的 AndroidManifest xml 中以用于我的主要活动