iPhone app design and distribution model - iphone

I need to create an app for a large company.
Their aim is to distribute this app to all of their customers (who themselves are companies - not individuals) and the end-user will be able to query their relevant information through this app.
The app will receive all of its data through webservices and will require login on every use.
On the one hand a web application might be suitable as all the data is anyway online and also distribution of such an app would be trivial.
On the other hand, they might want features in the long term which use the camera etc. and also the administration of the website (in addition to the existing web services) might be a problem - which means a native app working with web services is the solution.
The next question is the preferred way of distribution for this app if it is a native app.
I know Apple have the Enterprise program (which seems to have changed - I no longer see the reference to >500 employees or 250 device limit).
In my case there is one main company distributing the app to many customers so I don't know whether this program is appropriate.
Any advice would be appreciated.

I once had a similar problem... we ended up with the application in the store and an authentication mechanism inside the application. Most likely, customers would have to provide the user credential they use to authenticate at the web application to the iPhone app as well.
For the decision whether to build a native application or use a web application, I would recommend using a hybrid approach. This way you can start with an application which is based on an UIWebView and extend it with features only available to native applications...

Related

AppStore and alternatives for the following app

I got an offer to develop a simple iPhone app that would call a web service with user's credentials. An user would get the list of files that can be downloaded (.pdfs) and could then download the wanted file. Simple enough...
Now, I've had bad experience with publishing on AppStore. Basically, they refused one app because according to them our RSS reader for a online newspaper wasn't in accordance with their guidelines. They said that the application was a simple web aggregator which I won't argue now. Not now :)
So, back to the new app problem :)
I would like to know what are the options for distributing the new app. The client has a web page and wants to give it's visitor this app to get that data from their phones too.
Technically, the app doesn't have to be a native app. It can be a phoneGap solution too since it's quite simple regarding the functionality. Sincerely, I am afraid that there is no way that Apple will allow this app to be uploaded to their store being native, phoneGap...
P.S.
I would also like to know is there a way to distribute an "internal" (not publicly available) iPhone app? For example, a company needs an internal tool for their 500 employees, but can't afford to go through the process of conecting each device and compiling the app for each device individually...
If you want to sell customized apps to companies, you should consider the B2B program.
if you are in an enterprise that wants to deploy apps inside your company, the Enterprise Developer Program is a good choice.
For internal:
100 test devices.
alot of iphones with the distribution profile after the 100 devices
with the enterprise:
https://developer.apple.com/programs/ios/enterprise/

How do I combine the best of two Apps into one?

I have two similar iPhone and Android Apps (2 each) in the near future we will be combining/merging the best of these two Apps into one App. The App does have a user login that would need to be combined, but a common data file, so authentication should not be an issue. How do I deploy the combined App via the App Store and Google Market for users of the existing Apps? How can I phase the old out and let users know about the new merged App? I thought we could build the MOTHER App and deploy it as a version release in the App Store and Market, but can I deploy the same App version for two separate Apps? For the sake of an example, think of it as Bank of America merging their Apps with CitiBank under a single brand (CitiMobile is now BofA Mobile)
Thanks in advance your your valuable insight.
Merging two apps into one is actually quite simple in android do to the loosely coupled nature of the system. However, you may also consider remaining two apps that can talk to one another with a central content provider and broadcast intents, effectively using your own API.
If one app is the way to go, I would recommend making the super app and deploying it on the market, and deploy a "version" of the two original apps that informs the user what is going on and then points them to the Android Market for the super app.
The other way to do it is to deploy two copies of the super app one replacing each sub app, but that is way more hassle in the long run.
As far as iPhone goes, I can not speak to that.

Download additioanal functionality into an app - is it possible?

I'm currently developing an iPhone version of existing Android application.
Customer wants to provide his web services via mobile apps. On Android this is made in a modular way: user installs main app, and then he can download additional modules to it if needed. That way he can install only modules that he needs.
Is there a way to achieve same functionality on iPhone? I read about In-App Purchasing, but I don't know if it will work because additional functionality will not be built-in and unlocked - it needs to be downloaded and added to my app as a new module - so user's space would not be wasted with unneeded modules.
Thank you!
2.7 Apps that download code in any way or form will be rejected
From App Store Review Guidelines
Judging by the question, this is not a world-facing app - it has a specific customer. With Terente's answer in mind, do consider side-loading, AKA in-house distribution. That is - bypass the app store. The prohibition on the downloadable code is an App Store policy, not a limitation of the platform.
The enterprise contract with Apple is $300/year instead of regular $100/year. But you get to install your app on as many devices as you wish, completely bypassing the App Store. Either over the air (by browsing from the phone) or via iTunes.
Under this model, your app can download, store and run custom code all you want. The specifics of the plug-in model are up for you and your customer.
EDIT: so app store is a must. How about this: have a WebView in the project, have it download HTML pages with JavaScript in them, have code hooks for JavaScript to call. To the best of my knowledge, AppStore does not reject apps that display Web pages from the Net, and if the Web page happens to have a script, there's no prohibition on executing that script.
This violates the spirit of the rule while relying on letter and precedent. Technically speaking, JavaScript IS code. And again, technically speaking, WebView is capable of downloading and running it. And App Store is choke full of apps with WebView in them.
How will this fly with your customers, who knows.

Will a Safari-based app for iPhone be accepted to the iTunes store?

I'm about to begin development of an iPhone app. The app itself is fairly basic, and I want a speedy turnaround time.
I'm a web developer myself, specialising in traditional web technologies such as PHP/MySQL; I have no experience in Objective-C.
My plan was to create a very basic iPhone app that is just a Safari service that passes some basic variables to a URL. That URL is the app built in PHP and housed on my servers, this way I can create the app very quickly without needing to outsource anything.
My question is whether apps of this nature would be accepted into the iTunes store, or would they be out-right rejected? Anyone's experiences or comments are very welcome.
Thanks
It could go either way, but mind bullet 12.3 from the App Store Review Guidelines:
12.3 Apps that are simply web clippings, content aggregators, or a collection of links, may be rejected
In my opinion, a simple UIWebView wrapper around your web site comes close to the definition of a simple web clipping. Your approval may very well hinge on your luck in drawing a sympathetic reviewer.
It really depends upon your application...These kinds of application have been approved in the past but again I am saying that it depends on many factors.
Try to test your app in every possible manner and also keep in mind the memory issues.
Best of luck!!!
Should be fine - its called a web app and there is software out there that will do just this for you.
All you need to do is to make a UIWebView and put your web app into it.
Also look at http://jqtouch.com. That gives you some idea of what you can do web-side. :)
http://www.netbiscuits.com/559
Native Hybrid Apps
Native apps can interface more deeply
with the mobile handset modules and
sensors to create an even richer
mobile user experience. Netbiscuits
provides pre-build native apps
frameworks for all major mobile
operating systems to be easily
customized for the needs of
enterprises.
Get "2in1" by combining the power of
mobile websites and native apps by
wrapping mobile websites into hybrid
apps and list them easily in all major
app stores of providers like Apple,
Nokia, Google or Samsung to open a new
mobile distribution channel. The
benefits of this approach are fast
time to market, minimized development
and maintenance efforts and maximum
mobile cross-platform technology
coverage.
Yes, it will be accepted as long as you stick with HTML, CSS, JS and Obj-C on the client side. You still need to wrap it in an iPhone app. In my experience, the best way to this is to use http://www.phonegap.com/ or a similar framework.
You'll have the option of deploying you app through iTunes or as a regular web app (you users will be able to create a link to your web app right on their springboards)
It SHOULD be accepted, granted you test test test and make it look just like a native application. Also you'll have to make sure that your server is never down, or if the application can't reach it just display an error message. You also have to keep in mind that there are a lot of iPod Touch users, and they don't have access to the internet all the time. Which means that chances are you'll get a BUNCH of 1 star reviews

Iphone & Web App synch

I am trying to build an Iphone App client for our CRM solution so our sales people would be able to access the information available in our CRM through an Iphone App.
I am trying to find out what is the recommended approach to architect the application when it comes to the database. I am not sure where should the data reside, should I save a subset of the data on the iPhone, or should I just rely on webservices and pull the information I need from the database whenever I need it. Also, is there any best practices or frameworks to build such applications on the Iphone.
The "best" solution from a data synchronization standpoint is work directly with the web based database, the "best" solution from a user experience standpoint is probably not that, due to latency passing data back and forth from the server.
If you do not have experience doing iPhone apps & you have no desire to learn Objective-C & would like to leverage web development skills I recommend a combination of phonegap + jqTouch.
Hope I helped.
Is your CRM based on Rails? You might find ObjectiveReference handy. It's an Objective-C interface into ActiveResources on a RoR site:
http://iphoneonrails.com