iOS: QLPreviewController does not preview Pages or Word documents - ios

I am playing around with QLPreviewController but it just does not display preview for Pages and Word (.docx) documents. I am running the app on iOS 13 and Pages is installed if that has any effect..
I can successfully preview PDFs, images.. But not documents. When I filter my QLPreviewItems with QLPreviewController.canPreview it filters out those testing documents. According to docs these files should be supported - https://developer.apple.com/documentation/quicklook/qlpreviewcontroller
What could be the issue? Files app seems to preview Pages documents just fine albeit only thumbnails.
EDIT: Solved. It was pretty silly mistake on my part. I dragged all files to the Xcode but for those documents it did not add them to the target automatically. Since I named my Pages file as "Pages document" it looked like the QLPreviewController correctly detected the file type..

Related

QLPreviewController Fail To Load Large PDF File

I have tried for almost 2 days but unable to find any solution. I am doubtful whether it's a bug, but not sure.
I have downloaded some pdf files in my documents directory. I can view most of these files with QLPreviewController; however, when I try to open one especially large file (almost ~250 MB), QLPreviewController only shows the title of file with its size. Don't know how, but ONLY ONCE while debugging the issue it successfully loaded this file.
How do I resolve this?

Cordova iOS: Load videos with downloaded html's and video files

I have the following issue:
I have an iOS Cordova Application.
The application download a zip file and decompress it in "cdvfile://localhost/persistent/content/myfolder" by ussing the following Cordova plugins: org.apache.cordova.file-transfer, org.apache.cordova.file and https://github.com/MobileChromeApps/zip.git
Inside the zip there is an "index.html" file with "video tags" on it.
I was able to succesfully load and execute the "index.html" file, but the video doesn't load.
I know that the video file was decompressed successfully because:
I check the file inside my iPad.
I embed the video in the index of the cordova app (not the downloaded one) in the following way and it works:
var videocontainer = document.getElementsByTagName('video')[0];
var videosource = document.getElementsByTagName('source')[0];
var newmp4 = cordova.file.documentsDirectory + 'content/myfolder/videos/myvideo.mp4';
videosource.setAttribute('src', newmp4);
videocontainer.load();
videocontainer.play();
But, the video is not loaded/played inside the downloaded HTML file. To understand what I'm doing, I have to develop an application that will be updated by downloading its contents from zips, and the contents includes pages with videos embeded on them. It works on PC and Android, but not in iOS.
I tried the following things:
Loading the page in "_self". The page is displayed but not the video.
Loading the page in an iframe. Same result.
Loading the page within an inAppBrowser (plugin). Same result.
Video tag with source src="videos/myvideo.mp4" (works in Web and Android). Same result.
Video tag with source src="./videos/myvideo.mp4" (works in Web and Android). Same result.
Video tag with source src= cordova.file.documentsDirectory + 'content/myfolder/videos/myvideo.mp4' (with JS, by passing the path in a query string, same path that works in the root index.html as I described before). Same result.
Video tag with source src= cordova.file.documentsDirectory + 'cdvfile://localhost/persistent/content/myfolder/videos/myvideo.mp4'. Same result.
All the combination of previous things. Same result....
Loading the downloaded resources in a DIV is not an option, because the resources (images, css, javascripts, audios, videos, etc.) are downloaded on other iOS device's folder: the app's Documents' folder (cdvfile://localhost/persistent/).
I thing I tried almost everything... Why is not trivial to play a video tag, inside an html, that are both in the app's Documents' folder???
:-(
EDIT 1: Cordova Version = 3.6.3
Solution Founded!!
In almost all the android and iOS examples, downloaded content is being executed from "cordova.file.documentsDirectory".
Then, when you link this content in a or (by using AJAX), everything works fine (CSS, images, links) but media tags ( and ).
Again, I dont know why, but almost all the examples downloads and unzip contents by using this path.
After several days being blocked with this issue (I found lots of forums where the devs have to modify all their projects by using plugins like Cordova Media, jaeger25 Html5Video, etc, etc), I tried by using the following path: "cordova.file.dataDirectory"
I download, unzip and execute the HTMLs from this path and everything works with no parsing/modifications to the HTML files (that in my case were thousands). 100% compability with and tags with relative sources' path in an IFRAME!!!!!!
I guess you code the video links into the index.html inside the zip you decompress on the device.
Those links need to get "updated" with some javascript parser, BEFORE you actually load or navigate to this page in your phonegap app.
If your example is caused in Android, you definetly need to include the HTML5 Video plugin here:
https://github.com/jaeger25/Html5Video
On iOS the tag will work for local files. But the links need to be absolute.
And the links will change if you recompile your app or reinstall it.
The files will be available, but the APP ID will have changed and the absolute path also.
Example of an iOS path:
/var/mobile/Applications/<application UUID>/Documents/path/to/file
Hope you solved your problem.

Display offline html5 website

For my business I need to be able to show a potential client a website I generate with a program called Pano2VR, which is a virtual tour program. This program takes some panoramic photos linked with each other and can generate a virtual tour out of them (as example: www.casas-fotoart.de/virtualtours ). The output this App gives can be either HTML5, Flash or both (flash if available and html5 for mobile devices, for example).
I need to be able to show that on my iPad while offline. i haven't found any solution for that so I tried to build a easy App for that, which I thought it wouldn't be complicated.
I generated a html5-only virtual tour and I droped the output into the "Suporting Files" group on the Xcode project. I added a UIWebView and on viewDidLoad I set it so it loads the html file.
The files I'm droping are like these (these inside the ipad folder):
The html file loads into the webView, but it just displays "This content requires HTML5/CSS3, WebGL, or Adobe Flash Player Version 9 or higher.", even though when loading these files from the net, it loads perfectly. I know this message comes from the html file.
Any idea on how to make it work will be much appreciated. Thanks in advance.
Your problem is this probably - XCode is mangling the JS files, I assume because it's trying to compile them

How to export interactive PDF for iOs?

I have an interactive PDF, a catalog, where you have to click on a image to go to a specific page. All images are converted in buttons with the option "Go to destination". On Windows and Mac it works perfectly. But on iPad all the links, all the images, are not showing.
I've already read on many forums about this common problem between iOs and interactive PDF's. But I have some old PDF's, with the same principle, and those are working great on iPad. The images are showed, the links works...
That's why I'm wondering if it's not my fault or maybe I export the PDF in a wrong way.
The links to the PDF's.
m.hconline.eu/Baby%20Catalogue.pdf
m.hconline.eu/LA Catalog 2013.pdf
"Buttons" are not compatible with most pdf readers (except Acrobat reader and a few others). Such buttons are not recognized on the standard pdf reader on the iPad. I have checked the old file on the iPad, it does not work as well.
What you need to do is to use regular pdf links instead of buttons. In order to do so, you can use Acrobat Pro, delete your buttons, and create new links using the chain icon. You can specify the area of the link, so the user experience will be the same.
This is an old issue, but I did find more information regarding this. (I'd add a comment to the accepted answer, but alas, i do not have 50 points.)
According to George Johnson, "The problem with InDesign is in using the Go To Next/Previous Page options in InDesign[buttons], it creates an Execute a Menu Item action when exported to PDF, and since Reader for iOS doesn’t have menu items or interprets such actions otherwise, they are just ignored." - https://forums.adobe.com/thread/1142056?tstart=0
As for work arounds, I found a tutorial by Steve Werner, outlining the method of changing your work flow around, and adding your buttons in Adobe Acrobat instead, as kind of a post production linking process. - http://indesignsecrets.com/navigation-button-tricks-for-interactive-pdf-on-an-ipad.php

Strange behaviour for online PDF's in Blackberry browsers(in the abscense of any PDF viewer)

Currently I am working on two sites which hosts various documents in PDF formats. While testing the sites, I observed that, PDF's on one site are not opening in some blackberry models(Bold 9650,9700 and 9780). It gave an error ""application/pdf" not supported. However it worked perfectly on the other site, that too in the absence of any PDF viewer . PDF producers are different for both the sites. For one, its "GPL Ghostscript 9.04" and for other its "Adobe PDF Library 9.9". Is this creating an issue.Has anyone ever encountered such type of an issue before ?

Resources