Is it possible to embed a Keynote Presentation inside an iPad app? - ipad

We have a client who wants to build an app that essentially functions as a media kit that they distribute to clients. In addition to several videos, they would like to embed their Keynote presentation inside of the app. The presentation would also contain some videos on certain slides. Is there some sort of viewer that would allow me to embed the presentation inside the app? At the very least, is it possible to launch Keynote from inside the app to the specified presentation, and then return control to my app immediately upon closing Keynote?
Thanks,
Mike

UIWebView can display iWork files. I don't think it will play videos on slides, though.
Edit: You can use UIDocumentInteractionController to have the user preview the file and then launch Keynote if they want to. But AFAIK there is no way to do this programmatically without user intervention. Even if Keynote supports a URL scheme, there would be no way to pass the file.

If you post the presentation to iWork.com you can use a web view to play it back via the site's show-embedding mechanism.

Related

Files App View Controller?

In Pages, Numbers, and Keynote 3.3 for iOS, Apple has done away with its custom file manager and instead uses the a version of the iOS 11 Files App to allow the user to choose and save files within the applications,
The Files-like document picker User Interface on Pages and Keynote 3.3 for iOS 11:
Is this a publicly available view controller that developers can implement in 3rd-Party Applications?
Apple mentions in a user support document that these apps "work together" to present this view. Link: https://support.apple.com/en-us/HT208077
It is UIDocumentBrowserViewController.
As far as "how did they make it the root view controller of the app? Isn't [it] usually presented from another View Controller?"
Check this page: Adding a Document Browser to Your App.
Always assign the document browser as your app's root view controller.
Don't place the document browser in a navigation controller, tab bar,
or split view, and don't present the document browser modally.
There are a lot of useful resources on that page, but a lot seems to hinge on your app being "Document Based" (About Document-Based Applications in iOS).

I am using Camera API and QRCode API in my Project, Can i implement multitasking(splitvIew) in my Project

I am using Camera API and QRCode API in my Project, Can i implement multitasking(splitvIew, SlideOver) in my Project.
I think that when we use camera API, want to use fullscreen.
My project also have some other functionalities.
is it possible to use Fullscreen only when use Camera API?
If you app is camera-centric app OR Gaming related, Then Apple suggest to opt out above feature.
Apple Documentation Says
Consider opting out only if your app falls into one of these narrow
categories:
Camera-centric apps, where using the entire screen for preview and
capturing a moment quickly is your primary feature.
Full-device apps,such as games that use iPad sensors as part of their
core gameplay Otherwise, Apple, and your customers, expect you to
adopt Slide Over and Split View.
To opt out of being eligible to participate in Slide Over and Split View, add the UIRequiresFullScreen key to your Xcode project’s Info.plist file and apply the Boolean value YES.
Let me know if you need more clarification for the same.

Is it possible to create "Add to Home Screen" like feature from another app?

Currently "Add to Home Screen" works only with Safari browser. 1. Is it possible to programmatically create "Add to Home Screen" short cut from a custom native iOS app ? 2. Is it possible to make the short cut to launch another app, not the safari app?
This is a bit broad a question, but I'll attempt an answer. Short answer: no. You cannot add a home screen icon that launches another app from within your app without going through Safari first. (You can, however, link to another app directly from yours. See below.)
More intricate answer: if you want to launch another application from your own, and the application supports URL schemas (i.e. instagram:// for launching Instagram), you will be able to. Please see this link for the official docs.
The part that may remain unanswered here is whether a UIWebView can create a home screen shortcut from inside another app. It seems you cannot do this, after a bit of googling. This answer explains.

UIActivityViewController vs UIDocumentInteractionController in ios

I just read some articles on UIActivityViewController and UIDocumentInteractionController in iOS, but I am very confused about how to use them because both seem the same.
So, when do I use UIActivityViewController or UIDocumentInteractionController?
Is there any difference for Open In... & use UIActivityViewController?
I am very confused about how to use them. Please clarify to me their specific use.
In short, UIDocumentInteractionController deals with files while UIActivityViewController deals with various other services in your app. I'm not one to criticize much but you really should at least try to google and read at least the overview in the iOS Developer Docs.
UIDocumentInteractionController documentation:
A view controller that previews, opens, or prints files whose file format cannot be handled directly by your app.
...
Use this class to present an appropriate user interface for previewing, opening, copying, or printing a specified file. For example, an email program might use this class to allow the user to preview attachments and open them in other apps.
After presenting its user interface, a document interaction controller handles all interactions needed to support file preview and menu display.
You can also use the delegate to participate in interactions occurring within the presented interface. For example, the delegate is notified when a file is about to be handed off to another application for opening. For a complete description of the methods you can implement in your delegate, see UIDocumentInteractionControllerDelegate.
UIActivityViewController documentation:
A view controller that you use to offer standard services from your app.
...
The system provides several standard services, such as copying items to the pasteboard, posting content to social media sites, sending items via email or SMS, and more. Apps can also define custom services.
Your app is responsible for configuring, presenting, and dismissing this view controller. Configuration for the view controller involves specifying the data objects on which the view controller should act. (You can also specify the list of custom services your app supports.) When presenting the view controller, you must do so using the appropriate means for the current device. On iPad, you must present the view controller in a popover. On iPhone and iPod touch, you must present it modally.
Basically UIActivityViewController shares Data Objects (like Strings or Images) where UIDocumentInteractionController shares whole Documents / Files f.e. a PDF.

creating an interactive page (videos, photos) for sharing on iOS device

I am building an iOS app, using storyboard. I have created a page where the user can create a page that will then be then published on DropBox and shared between all app users. this page lets you add photos, videos (not yet), and textviews (with scrolling enabled). Until know when the user presses the upload button, a screenshot is taken and uploaded, then views from a table view. but obviously it is just an image, so you can't scroll the textfields to see all the content and if I wanted to add the video support it would not be able to play it. I tried doing research on the internet, but I am a bit confused. Do I have to save all the components (UITextField...) separately, and place them in the same DropBox folder, and then put them all back together? What do you suggest? Is there a way?
Of course you will have to save the data separately...how else would your program know how to create the view? I recommend JSON or XML. Don't ask about how to structure it, that is a different question and one you should think about yourself.

Resources