AIR AS3:在应用

时间:2015-05-16 14:14:55

标签: android actionscript-3 pdf air

所以我正在完成一个AIR应用程序,它将部署在Android和iOS手机上。

我想要一本手册,详细说明如何使用该应用程序。

首先,我用WORD写了英语,法语和西班牙语的使用说明书。 原来,每个文件的重量为8Mo,有20页和十几张图片。 翻阅DPI,每个转换为PDF的文件现在重0.5Mo。

我的目标是:如何在我的应用程序中包含此手册,最好不使用外部阅读器和互联网连接,以及流畅直观的文档导航。

我对网络的研究使我得到了不少解决方案,我想在这里分享,并从中收集尽可能多的想法和意见。

1 在我的应用程序中包含PDF阅读器以阅读内部PDF文件(来自应用程序存储目录的PDF)

PROS:pdf始终可供用户使用,无需互联网连接或外接阅读器。

缺点:鉴于下面列出的ANE仅适用于一个操作系统,我需要为Android和iOS环境编写不同的代码。还不确定下面的ANE是否与最新的64位操作系统版本兼容(有些版本在过去2年内未更新)。

链接:

PDF阅读器ANE for iOS(免费):(对不起,声誉并不足以发布链接)(某些论坛报告了一些应用程序崩溃)

PDF阅读器ANE for iOS(10美元):(对不起,声誉并不足以发布链接)

PDF阅读器ANE for Android(免费):(对不起,声誉并不足以发布链接)

PurePDF(不是ANE,但是AS3类,不确定是否与两个操作系统兼容):(对不起,声誉并不足以发布链接)

有人使用过PurePDF吗?由于它是100%AS3代码,它应该适用于所有操作系统,听起来很有希望。但我不知道如何使用它!!

2 启动外部PDF阅读器以阅读内部PDF文件(在应用程序内)。

PROS:使用openWithDefaultApplication()方法可能会对两个操作系统都使用相同的代码。

论坛上的某些用户会发现指向内部PDF文件的问题,特别是在手机上。

缺点:显然,如果用户没有安装PDF阅读器,他将无法阅读该文档。

也可以使用一些ANE来实现这一目标:

ANDROID:PDF阅读器ANE(在Android上打开默认PDF阅读器 - $ 5)(对不起,声誉并不足以发布链接)

ANDROID:PDF阅读器ANE for Android(免费)(对不起,声誉并不足以发布链接)

ANDROID:DocLauncher ANE(7美元,不再可用)(抱歉,声誉不足以发布链接)

iOS:ANE DEVICE FILE UTIL(免费并支持iOS 64bit)(对不起,声誉并不足以发布链接)

  1. 将我的PDF转换为SWF,然后在我的应用中显示。
  2. 使用特殊工具,我将PDF转换为SWF,然后将其嵌入到我的IPA或APK中。

    PROS:它适用于桌面。此外,下面的一些工具提供了导航界面和缩放选项。

    缺点:我还没有想出如何将SWF嵌入我的最终IPA或APK(将SWF添加到Flash CS6 FLA库之后),导航界面也无法自定义以适应移动环境。

    链接: 来自SWF工具的PDF2SWF(免费)(对不起,声誉并不足以发布链接)

    PDFMate PDF转换器(免费,专业版40美元)(对不起,声誉并不足以发布链接)

    4。 创建包含大量帧的动画片段(+50);然后在框架中划分我的文档内容并将我的文本粘贴到textFields中。然后添加一些基本的导航按钮。

    PROS:100%多平台解决方案。

    缺点:耗费时间。您可能会丢失布局。您将失去PDF阅读器中常见的缩放功能。向上和向下滚动并不顺利。 Textfield内的文本长度有限等。

    5。 启动外部PDF阅读器以读取外部PDF文件(存储在服务器中)。

    PROS:也许相同的代码可能适用于两种操作系统。

    缺点:用户需要互联网连接和安装的PDF阅读器。我将需要支付一个远程存储服务,该服务将(可能)施加下载限制。 在iOS上:可以通过navigateToUrl打开在线PDF,然后导入到iBooks中。

    6。 使用StageWebView类(或StageWebViewBridge类)显示HTML文件(将PDF转换为HTML后)。

    缺点:将带有图片的HTML文件嵌入最终的IPA或APK文件中似乎很棘手。

    具有讽刺意味的是,ADOBE是PDF格式的创建者,AIR正处于第17次重大更新。

    但据我所知,AIR并没有提供简单而令人满意的解决方案来在所有平台上显示PDF。

    你们有没有人知道一个多平台的解决方案来展示pdf,性能很好(平滑滚动和缩放)?

    读者应具有页面拇指,基本控件(下一页/上一页等),并应在本地存储或在线(最后的手段)阅读pdf。

    等待您的回复!

    BR

2 个答案:

答案 0 :(得分:0)

使用StageWebViewBridge类,我使用了相同的AS3代码,带有图片的本地HTML页面在AIR for Android和AIR for Windows上完美显示。

这是迄今为止最好的解决方案!

遗憾的是,我无法使用导航按钮找到从锚点跳到下一个锚点的方法。

相同的代码将很快在iOS上测试。

干杯!

答案 1 :(得分:0)

我终于找到了一些时间来测试iphone(iOS v8.1.2上的iOS版AIR v18)。 以下是关于此事的最后一句话:

在iphone上,使用 StageWebViewBridge 类访问HTML文件无效。 相反,我使用 StageWebView ,通过下面的方法,它工作:

  

var fPath:String = new File(new   文件( “应用程序:/output-html/index.html”)。nativePath属性)的.url;   webView.loadURL(fPath);

StageWebViewBridge 类适用于AIR for Android和AIR for Windows。

所以它取得了一定的成功,因为我必须为不同的平台编写不同的代码。 但是,嘿,更好的东西比什么都没有;)

最好的问候。

相关问题