Android上的Flash/Flex web应用程序缺少屏幕键盘?

Android上的Flash/Flex web应用程序缺少屏幕键盘?,android,apache-flex,flash,web-applications,Android,Apache Flex,Flash,Web Applications,我有一个企业Flex web应用程序,通过https提供,在FlashPlayer10.0及更高版本的桌面计算机/浏览器上运行良好 然而,当我用安卓2.2从我的HTC难以置信运行它时,该应用加载良好,但没有屏幕键盘,因此我无法登录。我可以在用户名和密码文本字段中看到闪烁的光标。我可以在它们之间切换。我甚至可以点击登录按钮,看到一个身份验证错误 根据这一点,这应该是可行的。有什么想法吗?我想在公共汽车站向陌生人展示我们的新应用程序 您是否尝试过严格按照10.1版重新发布您的作品?我相信任何支持10

我有一个企业Flex web应用程序,通过https提供,在FlashPlayer10.0及更高版本的桌面计算机/浏览器上运行良好

然而,当我用安卓2.2从我的HTC难以置信运行它时,该应用加载良好,但没有屏幕键盘,因此我无法登录。我可以在用户名和密码文本字段中看到闪烁的光标。我可以在它们之间切换。我甚至可以点击登录按钮,看到一个身份验证错误


根据这一点,这应该是可行的。有什么想法吗?我想在公共汽车站向陌生人展示我们的新应用程序

您是否尝试过严格按照10.1版重新发布您的作品?我相信任何支持10.1之前版本Flash的应用程序都会被视为移动设备上的Flash Lite,这可能是(也可能不是)问题所在


值得一试。

Flex 4中的spark组件目前尚未针对移动设备进行优化。代号为“Hero”的Flex的下一个版本将为spark TextInput/TextArea组件提供移动优化皮肤。这些皮肤基于TextField,它们还针对ActionScript皮肤和更合适的默认大小的性能进行了优化。当前Hero预览版本中的文本支持非常少,但最终版本将更加强大,例如支持文本区域中的滚动。有关详细信息,请查看规范:


可能值得注意的是,Hero中的移动功能设计时考虑的是独立的移动应用程序,而不是基于浏览器的应用程序。也就是说,你可以抓取这些移动皮肤,并尝试在基于浏览器的Flex应用程序中使用它们。这不是一个编程解决方案,但长按菜单按钮会在键盘无法自动弹出时打开键盘(至少在我的HTC Desire 2.2安卓上是这样).

问题似乎在于浏览器中键盘的不同实现。在Adobe将该漏洞关闭为不可修复时,请参见此处的评论:

我在Galaxy S2上也遇到了同样的问题-尽管手动将键盘向上推不是一个选项,因为地址栏会自动获得焦点。

移动文本输入

如果未检测到物理键盘,Flash Player 10.1支持使用本机设备虚拟键盘和文本字段支持。在支持虚拟键盘的移动设备上编辑文本时,虚拟键盘会自动升高和降低,以响应文本字段上的焦点变化,从而实现无障碍和直观的文本编辑。聚焦文本字段位于页面可见区域的中心,并适当缩放/滚动,以确保它不会被虚拟键盘遮挡。在屏幕旋转、来电或其他系统事件发生时,将保留任何已存在的文本输入虚拟键盘可与TextField一起使用,但当前无法与文本布局框架或其他Flash文本引擎文本一起使用。

设备:Kindle Fire

我也有同样的问题。我的数学实验室使用flash做家庭作业,而我无法使用键盘进行输入。直到我发现

  • 在Android设备上下载并安装“Keyboardflash_1.0.0.apk”
  • 转到浏览器中的flash程序
  • 运行“游戏键盘”应用程序并单击“退出后点击此处调出键盘”
  • 返回浏览器
你会注意到我没有执行应用程序给你的方向,因为kindle fire与这些步骤不兼容。也许是你的设备

您可能无法将此应用程序与“Dolphin”等浏览器应用程序配合使用

欢迎:) 尊重开发商


也在android市场上。

以下是部分答案。如果你需要向陌生人展示你的web应用,只需将其他web浏览器设置为默认浏览器即可。xscope或dolphin应该可以很好地使用它(我想,在输入框获得焦点之前,您可能需要放大一些)。我将把编程答案留给其他人。尝试了Dolphin…没什么区别…我想一定是Android上的Flash player。发现了一个几乎重复的没有答案的东西:我相信你需要使用基于TextField的文本输入组件,你知道你是否在使用这些组件吗?我不相信spark文本控件是基于TextField的。尝试使用mx文本等价物,看看是否有效。感谢您的建议。我继续尝试了一下(似乎很有道理),但不幸的是没有起到任何作用-(尝试将RIA作为独立的AIR应用程序进行测试。如果它作为AIR工作,那么问题可能是Flash 10.1浏览器插件中的一个错误。我也会尝试通过使用不同的输入字段来定位问题。您是否使用文本输入flex组件?如果是,请尝试仅使用基本的AS3文本字段输入类型(反之亦然)。难以置信的是,这确实奏效了。我不知道你可以手动强制键盘在Android上显示。现在我可以继续使用Spark控件了……谢谢。这在我使用过的HTC设备上效果很好,但这可能不是你希望客户依赖的功能,因为我知道一些摩托罗拉设备不支持这一功能,而且我相信三星Galaxy标签也没有。只是通过安装姜饼键盘而不是默认的三星键盘“修复”了我手机上的问题。如果你想让其他人使用你的应用程序,这不是一个真正的解决方案,但确认了问题的根源。这很奇怪,因为我在我的项目中使用TextField,但我无法让它调用三星Galaxy S2上的键盘。