Uploading same application for different company - iphone

I am developing an application that is for common use like shopkeeper inventory entry system.
Now i want that i can use this application for different company with only logo and theme change.
Is it possible to upload this type of application (with same functionality) for different company with different apple enrollment membership.
Thanks

As far as companies don't have problem.. apple won't mind... they're not going to check whether it already exists or not...

You will need a different app id, and therefore bundle id, for each version of the app. This is no matter how it is distributed, apart from source code. You should also look into the business-to-business licensing options; I don't know if there are available yet.
TL;DR: yes.

The Business-To-Business licensing is only available in the US, AFAIK.
You could also only put one app on the App Store, and make the theme and logo importable via an URL or text import.

Related

Is it possible to embed one iPhone app into another?

Is it possible to incorporate one iPhone app into another in order to redistribute it?
We're going to publish few apps owned by other developers and need to create some pre-rolls with our branding and some other similar features. The original developer could build the app for us, but won't provide us with a source code.
Sorry if the question sounds stupid, we haven't very big experience in the field, just need to clarify some things
Thank you!
No you can't. You are only allowed to execute your own app, you can't embed an other app in your bundle.
It is not possible to embed an app into another app, or better, you could do that, but Apple would reject it and anyway you would not be able to launch it on a non jailbroken device.
More to the point of your specific case, if you have only the binaries you could try and modify the resource files (i.e., .nib and .strings files) to modify the UI to some extent. Of course, you would then need to regenerate the signature for the app (and hope that everything works ok).
It's just a thought, but maybe you could include the other developers apps as static libraries. The advantages would be that the other devs wouldn't have to surrender their sources, you wouldn't face any code signing and bundle id related issues and including static libraries is perfectly safe.
The only disadvantage would be that the devs would still need to deliver the content seperately and they need to learn how to build a static library. An entry point for each app / each library to call it would also be needed, maybe even a small interface to allow the container app to learn about the individual apps status, to cancel them etc.
As I said, this is just an idea, there may be issues with that approach that I do fail to see right now. But maybe others can comment on this...
You might want to check out this link to learn a bit about building static objective c libraries.
Check apples Custom URL scheme, it might find useful for you. Just help=> http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html

Automatic Update of IPhone App

I am new to iPhone automatic updatability feature where user can change their contents whenever they want and iPhone app should pick them so that one need not to resubmit the application into Apple store. I know that I will need to deal with the database here a lot but if someone could through their idea on the solution design, implementation, and things to be taken care then that would be really helpful to me.
Thanks.
"content" here really means data. Apps can load data over the net to their hearts' content, but they can't load new code. Now, certain data might cause the existing code in the app to do one thing or another, so the app's behavior can be influenced by the data it uses. Don't play too close to the line, though -- if your data is really some form of scripting language that directly drives the behavior of the app, that will likely be deemed unacceptable.
As far as loading the content goes, there are a number of options available. The most common is probably using NSURLConnection asynchronously to load data from a web server. What the app does with the data after that is up to the app designer, and I don't think there's one objectively correct answer to that sort of question.
Apple not only allows this, but presented a session on this data driven app design technique at WWDC 2010, which is available as a video from iTunes to enrolled iOS developers.
Of course, the downloaded "content" can't include executable code, but it can include JavaScript and HTML5 to be run inside UIWebViews, as well as images, sounds, text, databases, etc., which can all be stored for offline use.
This violates apples SDK Agreement and will likely get your app removed from the app store if caught.
It should be mentioned that web apps offer the ultimate in automatic content updates. You can change the content, structure, and features of a web app without ever having to submit your app to Apple or anyone else. Deploying the app is as simple as copying a set of files to your server, and users get the updated version immediately, even if they're currently using the app. Web apps aren't a perfect solution in every case, but their capabilites are compelling if your app is dynamic.

Private iPhone apps?

I am interested in writing apps that connect to the intranet or an extranet. In other words, I would like to make private apps for my clients, but I don't want everybody able to access it and be able to download it. Do you know if there is a way to distribute enterprise apps only to a certain people? Does Android do the same thing?
The iPhone Enterprise Developer Program is targeting exactly this scenario. It allows building and distributing apps outside of the AppStore. It does cost $299 instead of $99, however; and it's available for companies with 500+ employees and Dun&Bradstreet number only. If you are small shop working for big clients, you might want to talk with them enorolling in that program so you can develop the app for them.
Update: As #lifeIsGood commented, it looks like Apple has lifted the 500+ employees requirement. At least it's not mentioned anywhere on the Enterprise Developer Program or the Choose an iOS Developer Program comparison page.
They have also added a Custom B2B Apps distribution mechanism, which seems to target the exact scenario the OP asked about.
The answer is.... sort of. You can create ad hoc distribution, but you are limited to 100 total devices in your list. So, 100 customers. Or, you can sign up for an enterprise license, but to do so your company must have 500 employees (there may be other restrictions there too).
[edit]
One suggestion might be to create your application as SaaS - and charge for the connection/data store
[/edit]
I've been looking into this too. I don't think there's a good way to do this with objective-c, but I do believe this can be done well with HTML5.
I'm reading this book http://building-iphone-apps.labs.oreilly.com/
The iPhone supports the web databases, offline apps, and with the webkit part you get icons so your app can look like a real iphone app and be distributed from a web site.
I don't know much about Android...
For Android, all you do is download the apk file to the phone. Then you go into Settings > Development and allow Non-market installs.

iPhone - packaging multiple app in a single app

I would like to package multiple app in a single app. So donwloading one app and install that in an iPhone will install 3/4 apps. Something like java midlet suits having multiple Midlets in a single jar file.
Is it possible by using multiple target or bundle, aggregate target etc.?
No. Don't do this for a few reasons:
I think it's a bad idea. [More on this below.]
It cannot be done. Multiple apps cannot be installed as a result of one application being downloaded.
Some apps act like bundles of apps, but what they really are is a bunch of mini-apps built into a larger one. I highly discourage this sort of bundling. There are a lot of apps out there that say, “51 Tools All-In-One, Only $1.99!”, but these are incredibly trashy and are bought by unsuspecting noobs with no taste. Don't contribute to that.
If you want multiple apps that can share data, keychain info etc there are ways to do that but leave them as separate app. It makes for a much cleaner user experience.
That doesn't make any sense on the iPhone.
You should look at In App Purchases instead.

How can two iPhone applications share the same settings?

Can two different iPhone applications share the same settings? I'm releasing two iPhone products, one that requires the user to login to use, the other that is free and can be used without a login. However, the second free application could have some enhancements that we could give if the user were logged in. Would it be possible to let a user who has both apps installed use the same settings module for the username/password we store on the device?
I don't think this is possible. I believe that each Settings module that is related to your app ID, which will be different for each app. It would be a security risk if one application could access another's settings.
I think the best solution is to use some sort of web service to store/retrieve the settings. Or you could use a custom URL scheme to pass data between the applications if you don't want to use a web service.
Natively I dont think its possible. But interfacing with an Internet Web Service, you could do it.