Can an iPhone Web App use the Camera? - iphone

I have a web app and I want to take photos and then upload them to a server. Can this be done with a webapp?

[edit] It's now possible, please see answers below.
No, webapp cannot access internal devices.
Try PhoneGap to make the gap between your app and the internal devices. But that will compile an application, which need to be distrubuted via the Apple Store.

This is now possible with iOS 6 and HTML5.
Using the <input> tag, you can get file input from either the camera or gallery (the familiar "take photo or video, choose existing"). Try:
<input type="file">
this will pull up the aforementioned dialog box of options. You can also add the accept attribute to specify whether you want image or video, like so:
<input type=file accept="image/*">
Max Firtman has a great article about what you can do with iOS 6 and HTML5 here: http://www.mobilexweb.com/blog/iphone-5-ios-6-html5-developers

You'll be able to create 'provisioning profiles' for up to 100 different devices to directly install your apps on, without going through the App Store. The install process isn't as straightforward as calling up a URL or downloading something from the App Store, but at least you can limit distribution to specific people without revealing the existence of the app in the public App Store.
Also see iPhone App Minus App Store?

Related

How do I access my app listing in App Store without iphone?

So, my app is approved and now I'd like to check what does listing look like in App Store. Is there way to do it without iPhone?
You can go to iTunes (Both Mac and Windows PC has supported) application and find your app.
There you can check how your app looks like in iPhone.
One more possibility: "https://itunes.apple.com/app/id[Your_APP_ID]"
Ex: https://itunes.apple.com/app/id424562537
First of all, it can take up to 48 hrs for your app to appear in all stores world-wide.
In iTunes Connect, you will find the direct link to your app. Depending on the browser (Safari vs. Chrome/Firefox/IE), first the iTunes Web Preview should show your app's store listing. From there you can view it directly in iTunes (if it's installed on your machine.)
To check if your app is available in all territories, go to "Pricing and Availability" and check for the right settings there. (Available in all territories)

Can an iOS app have no icon?

Is it possible to create an app that does not appear in the Home screen, and allows another app to grab its resources (sounds, images, etc)?
I want to create a lightweight app (app #1) and upload it to the app store. Then I would like to be able to direct users to download an add-on (app #2) if they want that contains more images and sounds. Then app #1 would read these resources from app #2.
I'm trying to avoid having my own server to serve these images, and just have the App Store handle this for me. I know I can do this on Android, and was wondering if it's possible in iOS as well.
Is it possible to create an app that does not appear in the Home
screen, and allows another app to grab its resources (sounds, images,
etc)?
Not only can you not create an app that's hidden from the user, you also can't access the resources of one app from another. Each app lives in its own sandbox and cannot read (or write) into the sandbox of another app.
I want to create a lightweight app (app #1) and upload it to the app
store. Then I would like to be able to direct users to download an
add-on (app #2) if they want that contains more images and sounds.
Then app #1 would read these resources from app #2.
The normal way to do something like that would be to host the resources you need on a server or just store them inside your app.
I'm trying to avoid having my own server to serve these images, and
just have the App Store handle this for me. I know I can do this on
Android, and was wondering if it's possible in iOS as well.
No, not possible.
If you are able to use the In-App Purchase system, then Apple will host this for you. From the docs, I'm not clear if this is iOS 6 only or is available for older versions (I haven't seen any reason it wouldn't work for older versions, but I haven't tried it).
Note that most iOS 6 specifics are under NDA, so please do not discuss them here until iOS 6 releases. This particular fact is public, however:
https://developer.apple.com/technologies/ios6/
https://developer.apple.com/appstore/in-app-purchase/index.html
https://itunesconnect.apple.com/docs/iTunesConnect_DeveloperGuide.pdf
No it's not possible. You have to setup an icon and it will be displayed on the iPhone springboard.
No it cannot, why do you need one?
Sadly No in IOS but in android this is possible.
There can exist an app without an icon. But it can still be managed or removed in "Manage Application" under settings.
This is required in scenarios, like say I want this app to alert user when he is going out of region, using GPS in the background. I do not want any icon nor any user interface.

Does iTunes pass referral parameters on iPhone once app is installed?

Is there any provision in iOS wherein the referral parameters used to start the iTunes application are passed on to the application on its first run?
For example in Android, if I use a link such as http://market.an......com.company.pany&referrer=heythere to download an app on Android and actually install the app, the Market app passes the "referrer" parameter and its value to the app on its first run, which the app can use to any extent.
Is there a similar provision in iOS?
We also struggled with this when we built our last mobile app, Kindred Photobooks. The best way we found is to basically bundle that information in the link and use fingerprinting to make that data available after install, which is working really well.
You can try to build fingerprinting in in house. Basically the steps would be the following:
1. When a link gets created, appending parameters to the link, or create a link reference in some backend database if you want shortened links
2. When a user clicks on that link, collect a fingerprint of their device from everything you can read in the browser (for example: IP, OS, screen size, etc) and redirect that user to the app store.
3. When the app opens, create a similar fingerprint from the same parameters collected in app, and match it up in your database to the outstanding fingerprint.
4. If there is a match, you can return those link parameters to the app through install.
Alternatively, if you don't want to build all that infrastructure and handle the many edge cases, we bundled it up into a free service called Branch. Check it out at http://branch.io
No, there is no such thing on iOS. But you can and should file a feature request at bugreport.apple.com, if you really need this feature.
As of iOS6, if someone installs your applications via a smart banner, you can pass a url to your app on startup. You do this by using the app-argument parameter:
A URL that provides context to your native app. If you include this, and the user has your app installed, she can jump from your website to the corresponding position in your iOS app. Typically, it is beneficial to retain navigational context because:
It should work on install:
When the app finishes downloading [after clicking install on an app banner], the View button changes to an Open button, and tapping the banner will open the app while preserving the user’s context from your website.
More here: http://developer.apple.com/library/ios/#documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html
I think this will work (but the jury is still out: Does app-argument on Apple Smart Banner get passed to app on install? ), but testing this is tough: How to test Smart App Banner Urls on in Dev environment
No, AppStore doesn't pass any parameters to application - it just unzips ipa to application folder (container).

Can my app provide an "Update in App Store" link?

For various reasons I need my iPhone app to include a way to tell the user that a new update for the app is available and prompt them to go update in the App Store.
It looks like there used to be an undocumented way to give an HTML link that would lead the iPhone to open the Upgrade page for app, or something?
How can i make a link to update my iPhone application?
https://devforums.apple.com/message/139548#139548
Unfortunately it appears that iTunes links have changed format from these old "Phobos"-type links (which used "WebObjects") to something new? I'm not very familiar with the old system or the new one...
Can I create a link that will take my users directly to the "upgrade apps" screen on the App Store? Or even better, one that will initiate the upgrade for my app immediately?
Apple provides an iTunes Link Maker tool which you can use: http://itunes.apple.com/linkmaker
Just put the "Media Type" as apps and type in the app name. Apple recommends using an NSURLConnection for opening the link within your app since it will cut out all of the re-directing that goes on and open straight into the AppStore app.

Using the iPhone SDK, can I programmatically get a list of the applications/games on a users iPhone/iPod touch?

I would like to be able to pull the list of apps and games the user has and present it to them, or launch one of them. I'm guessing that Apple doesn't provide this capability in the iphone sdk. Still, I'd like to know how to do it and still be eligible for the app store.
You are correct Apple does not provide this in the iPhone SDK, therefore you cannot do this and get your app into the app store.
If the application has a published URL spec (i.e. Google Maps, Mail, ...) then you can launch the applicaiton via the URL launching spec.
But if the given game / application doesn't support the URL launching spec, then you have no way to launch it from your application. I also believe you cannot determine if an app is installed via the URL spec, only launch the application.
Check out the "URL types" reference for Info.PLIST.