Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:使用ACTION\u VIEW intent筛选器截获HTTP表单POST响应_Android_Android Intent_Http Post_Android 4.0 Ice Cream Sandwich_Intentfilter - Fatal编程技术网

Android:使用ACTION\u VIEW intent筛选器截获HTTP表单POST响应

Android:使用ACTION\u VIEW intent筛选器截获HTTP表单POST响应,android,android-intent,http-post,android-4.0-ice-cream-sandwich,intentfilter,Android,Android Intent,Http Post,Android 4.0 Ice Cream Sandwich,Intentfilter,我已经设置了一个意图过滤器,当用户在内置浏览器中下载具有特定MIME类型的文件时,会触发该过滤器,然后打开我的应用程序来处理它。然后,我在Intent的getData()字段中接收URI,该字段可用于获取数据。这似乎很奇怪,因为要获取MIME类型,浏览器显然至少已经启动了HTTP请求,但对于简单的HTTP get来说,这没什么大不了的——在这种情况下,我只是重新获取它,一切都很好 然而,如果所需的内容是作为一个表单帖子的结果出现的,我就不走运了——而且我似乎不是唯一的一个,但我找不到任何答案。这

我已经设置了一个意图过滤器,当用户在内置浏览器中下载具有特定MIME类型的文件时,会触发该过滤器,然后打开我的应用程序来处理它。然后,我在Intent的getData()字段中接收URI,该字段可用于获取数据。这似乎很奇怪,因为要获取MIME类型,浏览器显然至少已经启动了HTTP请求,但对于简单的HTTP get来说,这没什么大不了的——在这种情况下,我只是重新获取它,一切都很好

然而,如果所需的内容是作为一个表单帖子的结果出现的,我就不走运了——而且我似乎不是唯一的一个,但我找不到任何答案。这里有几个人问了类似的问题却没有回答,还有一张谷歌罚单似乎表明这在旧版本中是一个硬限制,但在Android 4.0/冰淇淋三明治(我正在使用)中得到了修复:

以下是我正在使用的意图过滤器:

<intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.EDIT"/>
            <action android:name="android.intent.action.RUN"/>
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <category android:name="android.intent.category.WEB_SEARCH" />
            <category android:name="android.intent.category.ALTERNATIVE"/>
            <data android:host="*"/>
            <data android:mimeType="application/my-content-type"/>
            <data android:scheme="file"/>
            <data android:scheme="http"/>
            <data android:scheme="https"/>
</intent-filter>
那么,我是遗漏了什么,还是这只是框架的一个限制

谢谢

java.io.FileNotFoundException: No content provider: http://[the form URL] at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:603) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:535) at android.content.ContentResolver.openInputStream(ContentResolver.java:370) at my.package.MyActivity.onStart(MyActivity.java:127) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1133) at android.app.Activity.performStart(Activity.java:4475) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1928) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1980) at android.app.ActivityThread.access$600(ActivityThread.java:122) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1146) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4340) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method)