pwlin / cordova-plugin-file-opener2

A File Opener Plugin for Cordova
MIT License
316 stars 588 forks source link

iOS 9: copy to PDF viewer does nothing #39

Closed azn1viet closed 9 years ago

azn1viet commented 9 years ago

When open a PDF file, iOS gives you an option to copy to PDF viewer but it just does nothing. The only option it works on iOS 9 is to use iMessage which will attach the PDF file, but texting with huge file attachment costly, instead, email option would work but it just uses the file name, not the real file.

Not sure if this plugin can force attachment email or force file to be opened with iOS 9. Note that iOS <9 will open the file.

pwlin commented 9 years ago

Unfortunately I don't have an iOS9 device to test. Do you have standard Adobe Acrobat Reader Installed on your device? If not, can you please install it from app store and see if that works?

aanyun commented 9 years ago

I have the same problem. Even after I installed some PDF reader. None of them work except the iMessage can attach the PDF correctly.

pwlin commented 9 years ago

Did you try with Adobe Acrobat Reader?

aanyun commented 9 years ago

Yes.

azn1viet commented 9 years ago

Right. Nothing else working but only iMessage on iOS 9

pwlin commented 9 years ago

So it looks like Apple butchered this plugin completely with the latest updates. I will try to find an iDevice with iOS9 so I can do some tests.

bartvanvelden commented 9 years ago

Great! Any clue yet what is going wrong?

pwlin commented 9 years ago

I think at this point it's pretty clear that people are using this plugin commercially in all kinds of apps :) Which is pretty amazing and something I am really proud of.

I wish I could help you immediately with fixing this issue, but unfortunately I still didn't get any free time to borrow an iDevice from a friend and test this issue. At the moment I am only using the Android part of this plugin and that still works flawlessly.

Maybe someone with an actual iOS9 device can look into this and send a pull request?

Or maybe a company that is using this plugin can hire an Objective-C programmer for a couple of hours and fix this issue and then send a pull request?

If you fix the issue, I will gladly add your name/logo in README.md file as sponsor/contributor.

bartvanvelden commented 9 years ago

I have tested some things using Xcode. Our App downloads and stores various document types which can be opened with external apps. For this we use the Cordova file and file-transfer plugins. This part seems to be doing well. In the file-opener2 no exceptions or warnings are raised. Various inspections of the URLs show no change between iOS 8 en 9. In the plugin the launching of the external app seems to run without problem, although in the end nothing happens... I tested on both cordova-ios 3.9.1 and the yet unreleased 4.0.0.

Rovi23 commented 9 years ago

We've fixed this issue in Pull Request: https://github.com/pwlin/cordova-plugin-file-opener2/pull/42

bartvanvelden commented 9 years ago

awesome, @Rovi23 & @josemanuelbd, thanks!

pwlin commented 9 years ago

Thank you very much @Rovi23 and @josemanuelbd, I added you to the Contributors section in README.md file.

I also bumped the version to 2.0.0, cleared up README.md file, and pushed this new version to both Github and NPM. Please completely remove the old version of the plugin and add it again just to be safe.

Please continue testing the plugin and if there is any problem, just let me know.

@bartvanvelden thanks for your earlier testings :)

azn1viet commented 9 years ago

It's confirmed that the plugin works great with iOS 9 for all the PDF apps registered with iOS system except Facebook Messenger. Not sure why this messenger registered with iOS system but can't handle the job. Btw, thanks all for the great plugin and fast work.

Choppel commented 9 years ago

Hi, first of all - great plugin. Worked very good on Android and iOS so far. I updated our iPhone 5c to iOS 9 recently. Since then I have the same issue as described by others.

The problem is, that updating the plugin did not work as expected. The problem persists (see screenshot attached).

screen shot 2015-10-06 at 11 29 28

I tried reinstalling nearly everything (Adobe, fileopener2, iOS Cordova Platform). The code of the plugin in XCode matches the one on github. So I assume it's not a local problem.

Does anybody have a clue?

azn1viet commented 9 years ago

Did you do the command: cordova rm old_plug_in and cordova add new_plug_in?

Choppel commented 9 years ago

I suppose that in between ranting and shouting at my Mac I issued a remove and add of the plugin. :smile: I didn't keep step of what I did exactly. As I said, the source code in the Xcode Project is the same as on Github.

But maybe I am mistaken. I thought that, while testing, I clicked on "Copy to Acrobat Reader" and nothing happened. I also thought that this is not the correct button to be displayed. Now, whatsoever, it successfully opens the file when clicking on this button. Which confuses me for I thought on iOS 8 there was an option "Open with Adobe" where it opened the file in Acrobat. Right? Or was it always "Copy to Adobe Acrobat"?

pwlin commented 9 years ago

@Choppel: "Copy to ..." is the default iOS 9 action, as opposed to "Open with ..." which was on iOS 8 and earlier.

Choppel commented 9 years ago

Thanks for the info. Working like a charm on iOS now. Looking into Windows Phone 8.1 right now. Maybe I can get it to work.

josemanuelbd commented 8 years ago

@Choppel Here you are my implementation on windows8.1: https://github.com/josemanuelbd/cordova-tips-and-tricks/blob/master/windows8.1/open-external-files.js