How to have my app in "Open with..." with iOS - ios

When we view a photo, pdf, or any other files on iOS, it is possible to open the file in another app by clicking on "Open with...". And I would like to have my app in the list, for PDF files, PNG and JPEG.
I have tried everything I found on Google, and here is my file info.plist :
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeIconFiles</key>
<array/>
<key>CFBundleTypeName</key>
<string>PDF</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>com.adobe.pdf</string>
</array>
</dict>
<dict>
<key>CFBundleTypeIconFiles</key>
<array/>
<key>CFBundleTypeName</key>
<string>PNG</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>public.png</string>
</array>
</dict>
<dict>
<key>CFBundleTypeIconFiles</key>
<array/>
<key>CFBundleTypeName</key>
<string>JPG</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>public.jpg</string>
</array>
</dict>
</array>
I have tried to change it with all I found on Internet, but my app never appears in the list.
Is there something else to do than modifying the file info.plist ?
Actually, I manage to open PDF file in my App only in SAFARI ! But it's not as I want :
When I view a PDF File in safari, I can see on the top "Open with", but on all other apps when I click on the button Open with, I can't see my app.
What I would like is this :
Thank you very much for your help :D
Regards

Related

How to register app to receive screenshots taken by other apps directly

My app can already receive PDFs, PNG, JPGs from other apps via CFBundleDocumetTypes - Definitions. This means, once you chose the share-Button of other apps, my app appears in the list. So far so good. Opening a saved screenshot on an iPad also presents a symbol of my app to put it to.
But if I take a screenshot and want to send it directly, my app does not appear as possible receiver. I first have to save it somewhere first. How can I tell iOS to show my app as receiver for just-made-screenshots, just out of the editing view of the screenshot-feature?
When I send it as mail-attachment, it shows up as a .jpeg. Here is an exempt of my info.plist:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>PDF</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>com.adobe.pdf</string>
</array>
</dict>
<dict>
<key>CFBundleTypeName</key>
<string>PNG</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.png</string>
</array>
</dict>
<dict>
<key>CFBundleTypeName</key>
<string>JPG</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.jpeg</string>
<string>public.jpg</string>
</array>
</dict>
</array>

Show my App in the list of apps when the youtube share button is clicked in ios

Is that possible using the following ?
<dict>
<key>CFBundleTypeName</key>
<string>Open All Files</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSItemContentTypes</key>
<array>
<string>public.content</string>
<string>public.data</string>
</array>
</dict>
I know for photos its possible but how should I do it for youtube kindly suggest.
For video sharing you can use, "public.video (kUTTypeVideo)". For ex.,
<dict>
<key>CFBundleTypeIconFiles</key>
<array/>
<key>CFBundleTypeName</key>
<string>Video</string>
<key>LSItemContentTypes</key>
<array>
<string>public.movie</string>
</array>
</dict>
You can find other document type identifiers here : DeclaredUniformTypeIdentifiers

my iOS application does not handle image file type in all application

I want my app to be in 'Open in' options for image.
I have used this code in my Info.plist
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>Image</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.image</string>
</array>
</dict>
<dict>
<key>CFBundleTypeName</key>
<string>PNG image</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.png</string>
</array>
</dict>
<dict>
<key>CFBundleTypeName</key>
<string>JPEG image</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.jpeg</string>
</array>
</dict>
</array>
In the application 'Inbox', on sharing an image, i can see my app 'Quotle' :
But in Apple's application 'Photo', i don't see my app :
What can i do to see my app in sharing menu into application 'Photo'?
In order to show your app in Photo's Share to list, you need to add a new target of Share Extension into your project, please refer the document for more info on how to add the Share Extension.

How to associate CSV file to my app in iOS 7

Good day, everyone.
I followed these two tutorials line by line, try to associate my app to the csv file (email app attachment), but I after I added these down below changes to my app's plist file, then build my app and run it my device (iPhone 4, iOS 7.0.4), nothing happens, I mean when I clicked on the .csv file in the email, my app still does not show up in the open-in available application list, I just don't know where I did wrong, or iOS 7 has different way doing this?
http://blog.spritebandits.com/2011/12/14/importing-csv-data-file-into-an-ios-app-via-email-attachment/
http://www.raywenderlich.com/1980/email-tutorial-for-ios-how-to-import-and-export-app-data-via-email-in-your-ios-app
this is what my plist changes (the new entries added followed by the tutorial) looks like:
here's the app setting screen:
and here's the xml version:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>CSV Document</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string></string>
</array>
</dict>
</array>
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeDescription</key>
<string>CSV Document</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.data</string>
</array>
<key>UTTypeIdentifier</key>
<string>Damian-s.${PRODUCT_NAME:rfc1034identifier}</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<string>csv</string>
<key>public.mime-type</key>
<string>application/inventorytodo</string>
</dict>
</dict>
</array>
You're missing the UTI type in your CFBundleDocumentTypes definition:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>CSV Document</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string></string>
</array>
</dict>
</array>
should be:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>CSV Document</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>Damian-s.${PRODUCT_NAME:rfc1034identifier}</string>
</array>
</dict>
</array>

Open My application with png or jpg file

I want to show the my app to the user when user use the open in function from the other app.
Here is my code.
<array>
<dict>
<key>CFBundleTypeName</key>
<string>Image File</string>
<key>LSHandlerRank</key>
<string>Default</string>
<key>LSItemContentTypes</key>
<array>
<string>public.png</string>
<string>public.jpg</string>
</array>
</dict>
</array>
What is wrong with that?
ScreeShot

Resources