我正在尝试在我的公司正在Adobe AIR中开发的Flex Mobile应用程序(使用Flash Builder)开始开发。该应用程序最初将针对iPhone和Android以及最终的BlackBerry PlayBook平板电脑发布。
但是,其中一个要求是我们需要能够从设备上的浏览器启动应用程序,并将参数传递给它。
我不确定我做错了什么,但是我无法让它发挥作用。我在Android部分中放了以下代码块。我现在正在使用Android进行初始测试。很容易将APK放到Android设备上,我就坐在这里。
<application>
<activity android:name=".MyUriActivity">
<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" android:host="path" />
</intent-filter>
</activity>
</application>
我还有用于处理事件的代码:
import mx.events.FlexEvent;
protected function application_preinitializeHandler(event:FlexEvent):void
{
NativeApplication.nativeApplication.addEventListener(
InvokeEvent.INVOKE, onInvoke);
}
private function onInvoke(event:InvokeEvent):void
{
// You can parse argument value from event.arguments property
Text1.text = "Arguments: " + event.arguments;
}
allowBrowserInvocation标志设置为true。
我尝试使用以下链接创建测试HTML页面,但我只是在Android浏览器中收到“网页不可用”消息。
<a href="myapp:">myapp:</a>
<br><br>
<a href="myapp:#Intent;action=android.intent.action.view;end">click to load apk</a>
我已阅读以下所有帖子,但我仍遇到问题。有人可以帮帮我吗?我错过了什么?
答案 0 :(得分:1)
好吧......我不确定我做了什么,也许是我喝了一杯水的休息时间。但是,当我再次尝试它时,它可以工作。
我清除了清单部分,并再次尝试使用此站点中的示例:
http://dreamingwell.com/articles/archives/2011/06/flex-mobile-cus-2.php
现在它起作用......但我想我已经尝试过了......
(从评论转移到实际答案,现在StackOverflow允许我这样做)