Making an App with PhoneGap that operates without internet - ipad

I want to create a small App that just shows WebPage with link, video Playing and PDF Documents. The problem is that I expect the app to open Video, PDFs etc without accessing internet.
So, when I click on video, it should play even without internet.
Is it possible to do this in PhoneGap?

As long as they are in a format that the device can handle in the browser directly, you should be fine. A good way to think of PhoneGap is like an enhanced web browser.
You should be able to put the files into the resources, and PhoneGap should be able to access them completely fine. It essentially works by using the file:/// scheme, so you can probably try making something like you'd want to put on the iPad, and try it on your computer. If it doesn't work on there, it likely won't work on the iPad either.
In terms of video files, you'd probably want to use an .mp4, as these should be natively supported by the iOS WebView.
Now that being said, if you're trying to get your app in to the AppStore, you may want to look into the Apple User Interface guidelines. For example section 12.3 of the App Store Review Guidelines states that apps that are ... a collection of links, may be rejected.
You may also find the iOS Human Interface Guidelines helpful.

Related

Convert a video into an IOS Live Photo format without an Apple device

I'm currently making live/animated wallpapers for Android phones, which is pretty easy with GIF/Mp4 files. But I would also like to make the live wallpapers compatible natively with ios/iPhones. I've seen many tutorials on how to convert a video to a Live photo but they all involve some kind of app you need to install on your IPhone. Issue is, I don't own an iPhone or any iOS device to do that and apparently iOS emulators are not a thing, so my question is :
Is it possible to convert a (mp4) video to an iOs Live photo through a 3rd party ? If so, how would you do it ?
I'm pretty inexperienced with the iOS environnement so thank you for your help !
Well, a live photo is a container that holds both a .jpeg and a H.264-encoded .mov file. More details here.
Do you have an Apple computer to do so, or do you want to create it independently from any apple hardware?
For the first case, there are a bunch of (demo) applications on github you could take a look into.
For the second case, I'm not sure if anything exists.

How to get the iOS Camera suggest my app when snapping a QR code

I want the Camera App that comes with an iPhone to recommend a QR code be opened up in my app. My first question is, if two or more apps register the same universal link, which app gets suggested.
For instance I removed one app that kept on being recommended. Then suddenly another app starts getting recommended. How does a user or developer control this.
Have a look at Apple's guide for implementing Universal Links. In short, your website must upload a JSON file at a specific location that tells iOS which apps can be associated with the website domain. Here is an example file used by the NBC app.

Is it possible to prevent an iOS app from being placed on the home screen?

I am developing an iOS app using Xamarin.iOS that should only be triggered by tapping on a URL. Because of this, I would like to prevent the app icon from being placed on the home screen. The reason is, the app will not function properly if they open it from the home screen (it needs some of the data in the URL to load properly). I would prefer to prevent the app from being on the home screen instead of checking whether a link was tapped or not. I know that is possible to do this in Android using the manifest, is this also possible in iOS?
This is not possible whatsoever; the developer has no control as to the placement and visibility of the application, and as such will always be visible on the springboard/home screen.
The best option you have is to show information to the user that explains why opening it from the home screen will not work, if they launch it that way. Most likely though, this will be rejected from the App Store as having no useful purpose. The guidelines are found here (App Store Guidelines), and I think this is what may cause a rejection (emphasis mine):
If your app is not particularly useful, unique, or “app-like,” it doesn’t belong on the App Store.
I'm not finding the documentation I was looking for, but, as far as I know, this is not possible in iOS.
You could maybe have a default url that the app launches with and then use deep linking to launch the app with a custom urls. There are lots of great tutorials on deep linking (launching your app through a url) like
This one or maybe this one

Upload file from iPhone media library, in 2012

I'm about to launch a service where one of the feature is to upload files with an 'upload' button on a website. Some years ago, I made some program for iPhone, and I remember that it was impossible to upload an MP3 from the library, because each app is in its sandbox, though I was able to upload MP3 placed in the sandbox itself.
There is an old post on SO about the impossibility to upload from the library to a website:
A html5 web app for mobile safari to upload images from the Photos.app?
Is possible as of may 2012 for an iPhone/iPad to be prompted into the music library when clicking on an html upload button?
I don't think things will evolve in your way on iPhone.
I assume your service will not be in native objective-c.
look at the features of phonegap to see what interactions are currently possible :
http://docs.phonegap.com/en/1.8.0/index.html
You can probably develop a dedicated app to extract the music file using the Media Player framework and send them to your service, but I barely doubt it can pass the apple verification team.
Apple will not allow you to do this. Although it may be possible using private APIs or perhaps the Media Player framework, it will not be accepted by Apple.

PhoneGap in regards to App Store approval

I read that PhoneGap is approved by Apple as a framework for building native apps, but I'm not clear on how this does not constitute a "website wrapped as an app," something that Apple specifically doesn't like, as per their App Store guidelines. I'm assuming it is because the JS is contained in the application, rather than running on a remote server?
Any clarification on this issue would be most appreciated.
but I'm not clear on how this does not constitute a "website wrapped
as an app," something that Apple specifically doesn't like, as per
their App Store guidelines.
By this Apple means Apps that simply show a UIWebView that loads a remote website, so it basically just behaves like Mobile Safari, just without the controls. Also they wan't Apps to show at least a UI when the device is not connected to the internet, like in the Facebook App where you can still read already downloaded status updates, view photos etc. That's what a "I just wrap a remote website inside a UIWebView"-App can't do.
PhoneGap Apps have all the resources they need (HTML, CSS, JavaScript) on the device residing in the App's bundle, so using such an App would not depend on network availability and could at least show a UI that tells you to connect to the Internet in order to use the App, or they could display already loaded content (like Facebook, Twitter and so on).
I think that the signature of the binary tells Apple what framework built the application, and since all the supporting files (js included) are included in the project and therefore in the binary, it is a standalone application. That being said, I still think that doing things Natively is the best way to go. I am extremely comfortable with javascript and started out thinking Phonegap was the way to go for me. I did a couple of projects with it and then decided to take the plunge and learn Objective-C. That worked out so much better for me. No dependency on a third party framework and I wish that I had started that way.
Sometimes the easy way out just hurts ya in the end IMO.

Resources