1

抱歉,解释太长了。提前感谢所有抽出时间的人。

我是一名 Ubuntu 用户,他在 MacMini 上设置了 Titanium Developer,以便为 iPhone(以及最终一些其他平台)构建应用程序。

该应用程序没有内置任何本地代码,而是简单地指向我的网站。为此,我需要做的就是更改 Titanium 的tiapp.xml文件以包含我的网站 URL。我没有编写任何其他代码,也不需要包含任何其他文件。它只是简单地编译并在模拟器中运行,没有任何障碍。

我只有一个问题:我需要将文件上传到我的网站,而你们大多数人都知道,Apple 已经禁用了输入字段 type=file。我已经让它在所有其他浏览器中工作。该操作只是调用一个 php 文件并传递文件信息。

如果我没有应用程序,而有人只是使用 iPhone 的 Safari 浏览器手动导航到我的网站,我可以使用 CliqCliq 解决这个问题,这是一个非常酷的 iPhone 应用程序。基本上,我使用 JavaScript window.open() 在第二个 Safari 窗口中启动 CliqCliq 的 QuickPic 浏览器。用户选择一个文件;QuickPic 上传;然后用户返回到我使用 window.open() 启动的第二个 Safari 窗口。用户关闭窗口,Safari 将它们返回到第一个窗口(即我的网站)。

问题是我的网站正在我的应用程序中显示。(顺便说一句,我还没有我的开发者许可证,即使我是几周前注册的,而且我无法在模拟器中测试它,因为我无法将 QuickPic 安装到其中,我想。)我想要使用 iFrame 重复上一段中描述的相同步骤,但这似乎不起作用(即,尽管我指定了 src,但 iFrame 是空白的)。我还尝试通过使用老式框架并将 col-width 设置为 0 来隐藏窗口。这也不起作用(即,Safari,如果我没记错的话,打开了一个单独的窗口)。

我工作有点盲目,因为我无法在 iPhone 上测试任何东西,但我想我有两个选择:我可以找到一种在 iFrame 中启动 QuickPic 的方法 - 或者 - 我可以找到一些方法来合并Apple 工具包文件选择器进入 Titanium 应用程序。

第一个选项的问题——但同样,直到我可以在 iPhone 上尝试这个我才知道——我假设两个应用程序(我的和 CliqCliq 的)不能同时运行。即使我有一个隐藏的窗口、不可见的 iFrame 等,它启动 QuickPic 的那一刻,我认为我的应用程序会退出(?)。

第二个选项的问题是我不知道如何使用 Titanium 将文件选择器合并到我的应用程序中(请记住,我知道的很少)。如果我不能让 Apple 的文件选择器工作,CliqCliq 的 Brian 甚至提供给我一些代码,但我不知道下一步该做什么。

你们有什么想法?最好的方法是什么?而且,对于一个简单的人来说,最容易做的事情是什么?

谢谢。

4

1 回答 1

1

<input type="file">iPhone 不支持。您需要使用 Titanium 的 API,特别是媒体API (openPhotoGallery 或 showCamera)。

作为旁注,据报道,Apple 拒绝只是显示网站的 web 视图的应用程序。您可能需要考虑将大部分应用程序代码放在本地存储中并使用 AJAX 来获取内容。

于 2010-03-03T18:53:48.153 回答