Articles of intentfilter

什么是意图filter准确?

我读了很多关于意图filter的文章,我真的不明白他们在做什么? 所以如果有人可以用一个明确的例子向我解释什么是意图filter的作用? 谢谢

PACKAGE_REMOVED&PACKAGE_ADDED与PACKAGE_REPLACED Intent Action一起被触发

所有我想要做的是更新我的列表在每个安装和卸载,而不是包装replace。所以主要的问题是安装和卸载意图启动每个replace操作。 所以为此我已经实施了一个BroadcastReciever如下 <receiver android:name =".IntentReceiverTest.AppReciever"> <intent-filter> <action android:name="android.intent.action.PACKAGE_REMOVED"/> <action android:name="android.intent.action.PACKAGE_REPLACED"/> <action android:name="android.intent.action.PACKAGE_ADDED"/> <data android:scheme="package"/> </intent-filter> </receiver> 在每个replace我得到3个广播与行动 首先用PACKAGE_REMOVED触发AppReciever 然后在PACKAGE_ADDED之后再次触发AppReciever 几秒钟后PACKAGE_REPLACED再次触发AppReciever 所以请build议任何更好的方法来捕捉replace行动 要么 由于PACKAGE_REMOVED和PACKAGE_ADDED操作, 阻止以前启动的服务的一种方法。

Android Intent – 筛选http地址

我试图拦截与我的应用程序的几个不同的链接,我有意图filter数据参数的麻烦做到这一点。 这里是我想拦截的两种types的链接 http://www.domain.com/#id=abcdef123346 http://www.domain.com/social/landing/abcdef123456 我已经决定有一个单独的活动来拦截这两个链接,并使用java正则expression式来开始正确的活动。 但是,我似乎无法捕获只是这两种格式没有捕获像http://www.domain.com/abc123 <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="http" android:host="www.domain.com" android:pathPattern="/#id.*" /> </intent-filter> 这是我目前试图拦截types1,由于某种原因,它不工作。 这个意图filter正确地拦截types2 <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="http" /> <data android:host="domain.com" /> <data android:host="www.domain.com" /> <data android:pathPrefix="/share/web" /> <data android:pathPrefix="/social/landing" /> </intent-filter> 谢谢,

在Android的清单文件中,main,default和launcher有什么用处

<activity android:name="ApiDemos"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> – 如果在我的项目中使用了多于一个的活动,任何人都可以解释main,default和launcher这些属性在manifest中的用途。

Android如何使用给定的格式创build自定义URLschememyapp:// http://

我已经通过大部分的自定义URLscheme问答进行了研究,我还没有find我可能的答案。 我希望通过点击浏览器中的某个URL(移动设备上的任何地址)来启动我的应用程序,问题是我的给定的URL不能被修改,因为它也提供IOS应用程序,它看起来像这样: “myapp:// http://www.name.com/path/path2/ ” 我不知道如何处理“myapp:// http://”,并构build一个适当的意图filter,我试过的一切都不起作用。 任何帮助将不胜感激,如果我错过了相关的答案,请除了我的道歉。 这是我到目前为止所尝试的: <activity android:name="com.myapp.test.SplashScreen" android:exported="true" android:label="@string/app_name" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <!– Test for URL scheme –> <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:host="www.name.com" android:path="/path/path2/" android:scheme="http" /> <data android:host="www.name.com" android:path="/path/path2/" android:scheme="https" /> <data android:scheme="myapp" /> </intent-filter> <!– […]

Android – 如何获得所有可用的意图filter的列表?

我searchAndroid文档和一些疯狂的原因,我无法find所有可用的意图filter的列表。 我正在寻找一个意图filter,它会做类似的事情,通过广播接收器通知我一个特定的活动(例如浏览器或电子邮件)已经启动或在前台。 任何人都可以帮助我。

“android.intent.category.DEFAULT”的目的是什么?

在意图filter的类别字段中提供“android.intent.category.DEFAULT”的目的是什么? 这是什么意思?

如何检查是否可以从一些活动处理意图?

到目前为止,我有这个方法,但是就像缺less了一些东西 例如我有一个文件/ SD卡/声音.3ga返回假(就像没有活动,可以处理这种types的文件),但是当我从文件pipe理器打开它与媒体播放器没有问题 我认为这个意图是不完整的,我需要更多的东西来确保handlerExistsvariables只有在没有可以处理这个意图的活动 PackageManager pm = getPackageManager(); Intent intent = new Intent(android.content.Intent.ACTION_VIEW); String extension = android.webkit.MimeTypeMap.getFileExtensionFromUrl(Uri.fromFile(new File(uriString)).toString()); String mimetype = android.webkit.MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension); intent.setDataAndType(Uri.fromFile(new File(uriString)),mimetype); boolean handlerExists = intent.resolveActivity(pm) != null;

Android:了解意图filter

我想创build一个意图filter,以便某些链接将触发我的应用程序的开始(请参阅此stackoverflow线程例如: 如何注册一些URL名称空间(myapp://app.start/)访问您的程序在Android OS中通过调用浏览器中的URL? ) 在尝试的时候,我发现,我不太了解Intents和Intent-Filters(在Manifest.xml中定义)是如何工作的。 以下几点有什么区别: <action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.MAIN" /> 或以下: <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.MAIN" /> 实际上类别和操作Intent-Filters之间的区别是什么? 我读了这个页面http://developer.android.com/reference/android/content/Intent.html,但我仍然缺less一个基本的了解。

使用意图filter不能正常工作,从URL打开Android应用程序

我有一个Android应用程序,人们用它来替代一个网站。 因此,当用户遇到网站的URL时,我想给他们在我的应用程序中而不是在浏览器中“打开URL”的选项。 换句话说,我希望popup窗口出现,让他们在我的应用程序和浏览器(可能还有其他应用程序)之间进行select。 我从各种来源了解到,我需要使用“数据”filter为应用中的某个活动添加意图filter,该filter会对正确格式的url进行过滤。 有问题的网站是http://members.iracing.com ,因此我添加了以下意图filter: <activity android:name=".MainActivity" android:label="@string/title_activity_main" > <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" /> <data android:scheme="http" /> <data android:host="members.iracing.com" /> </intent-filter> </activity> 我已经尝试了各种forms的这些数据filter,例如使用具有两个属性的单个“数据”节点: <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="http" android:host="members.iracing.com"/> </intent-filter> 这根本不起作用。 我不知道还有什么要告诉你的。 我在我的网站上托pipe了一个简单的HTML页面,并在该网站上有几个链接(全部以“http://members.iracing.com / …”开头),当我点击其中任何一个页面时,在浏览器中没有问我要使用哪个应用程序。 我在模拟器上以及在我的物理设备上安装应用程序后都尝试过,没有任何效果。 我在一个完全空白的,新的Android项目中尝试了这一点,只是为了看看是否会工作,什么都没有。 然后我意识到该网站需要身份validation,如果你没有login它redirect到https://members.iracing.com/membersite/login.jsp的login页面,因此我试图用“https”replace该scheme。 我甚至尝试将主机改为“www.members.iracing.com”,最后我甚至尝试了所有这些东西的组合(不知道这是否应该工作,但嘿,我在这一点上绝望了.. …) […]