在API级别17上从android浏览器启动活动

在API级别17上从android浏览器启动活动,android,Android,我有一个使用自定义Mime类型提供配置文件的web服务。我想在用户单击链接时使用意图过滤器启动我的活动。它在所有Android版本上都能正常工作,但在4.2(API级别17)中却无法正常工作。 这是我的Manifest.xml <activity android:name="activityName" android:screenOrientation="nosensor" android:theme="@style

我有一个使用自定义Mime类型提供配置文件的web服务。我想在用户单击链接时使用意图过滤器启动我的活动。它在所有Android版本上都能正常工作,但在4.2(API级别17)中却无法正常工作。 这是我的Manifest.xml

        <activity android:name="activityName" 
              android:screenOrientation="nosensor"
              android:theme="@style/Theme.Sherlock.NoActionBar"
              android:exported="true">
         <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:scheme="https" />
            <data android:mimeType="application/vnd.xxx.yyy"/> 
        </intent-filter>
    </activity>


有什么想法吗?

嗯,你的应用程序可以在4.2硬件上运行(在Galaxy Nexus上测试)。它会短暂地弹出浏览器(在4.1 x86模拟器上我没有注意到这一点,尽管它可能太快了)。但是,控制权将传递给您的活动

我的猜测是,在模拟器上实现的浏览器中存在导致问题的bug


也就是说,如果这真的是针对某种专有配置文件,我建议您在应用程序中处理下载。不要让人们点击
TextView
——作为超链接或
WebView
,而是在你自己的应用程序中提供配置文件列表,然后自己使用
HttpUrlConnection
(或
HttpClient
)下载。

刚刚在Galaxy Nexus上用OS 4.2.1进行了测试。测试应用程序不工作

在code.google.com上打开了一张新票,等待反馈

已解决,。
只需将android:launchMode=“singleTask”添加到清单中。由于某种奇怪的原因,在安卓4.2中,该标志是强制性的……

在安卓4.2上应该可以工作,假设您的应用程序的某些部分已经在设备上运行过。你可以试着去掉
nosensor
的东西,看看这是否有帮助。否则,创建一个复制错误的示例项目——我想看一看。我在真实设备和模拟器上使用了相同的代码、相同的apk,结果相同:它适用于android版本<4.2,不适用于android 4.2(.1)。明天我将尝试创建一个示例应用程序(我可以在哪里上载t?“我可以在哪里上载t?”——GitHub,您网站上的ZIP文件,等等。您可以在www.sarbyn.com/TestMimeType.ZIP下载示例项目。应用程序尝试下载具有自定义mimetype“application/vnd.sarbyn.config”的文件。下载将触发MimeHandlerActivity。它适用于所有模拟器,但不适用于4.2模拟器。今天晚些时候我将尝试看一看这个。不要只尝试一次测试应用程序。在第一次运行时,它可以工作……但另一次单击不起作用。我用一个真正的设备和股票浏览器chrome和dolphin再次尝试:它不起作用。不要在意textview链接:这是一个演示应用程序。在实际应用中,该链接由smsI提供,现在已经运行了十次。它已经工作了十次。可用性糟糕透了,在自定义MIME类型处理活动中按BACK返回浏览器(在我的例子中是Chrome),您必须向我们提供最近的任务列表才能返回到您的
启动器
活动。我对自己做HTTP而不是依赖浏览器的评论。