How appstore, test applications which communicate with local servers - iphone

I am new in iphone development. I am developing an application, which is targeted to the costumers of a shopping mall. The application installed in the customers iPhone, wil communicate with a server in the mall(via wifi) and update him/her with various offers in the mall.
I am in the final stages of development and planning to submit the application for AppStore approval, once I complete dev. and testing.
I understand that, AppStore will test the application, when we submit it for approval.
In many occasions the application communicates with the local server to get data from it.
I would like to know, how they will test my application, without running the server?

When you submit your application to Appstore there's a place in forms where you can give account info for testing:
Demo Account - Full Access Please
provide us with the details of any
test accounts that we can use for
testing your application. This can
include usernames, passwords, access
codes, etc.

I'm not sure why you wouldn't want to expose your web services to the outside. It sounds like you want to advertise specials for the stores while people are in the mall... Well, if I download the app, wouldn't I want to sometimes view the specials when I'm at home? or on the way to the mall?
It seems to me that you're crippling your app from the start if you don't allow people to use it outside of your wifi network.
If your authentication is good enough, it shouldn't be a problem to launch your server-side stuff on a live web server somewhere and point your app at that.

Related

Share an Ionic Framework app with users for testing on real devices

I have made an Ionic Framework 4 app and have tested on my laptop and own phone using localhost but now want to get a few users to test it on their devices. I don't want to put it on any app stores as it's for my uni final project so isn't good enough for that. From what I have read there is no way to test on iOS devices without uploading to the App Store, but I have read testing on Android is easier.
Please could you advise me on how to go about deploying the app for users to test?
Thanks!
I can see some discussion in the comments above about just sideloading this.
That's a good, simple option, but it does require your testers to reduce their security settings to allow loading of apps from non-Google sources.
This depends on your users if this is a responsible thing to ask them. If you are dealing with technically minded people this is ok, but if it's for casual users you need to be sure that you revert this setting afterwards, otherwise they could fall prey to a phishing scam in the future because of what you have asked them to do.
If you do choose to do it via the Google Play app store then you have options for distributing to a select group of people without ever putting it live in the public app store.
Its a $25 lifetime fee to join the app store. Then you can release on the internal testing track for up to 100 users. You just invite them via email, they enroll in your testing channel, and then they can install it safely via the app store.

Creating an iOS application which is distributed to limited selected audience

I just started creating custom client application for IOS, Which i have already developed for PC and Android clients. Idea of these apps is to use SQLite database file, which is created in PC admin app and is actualized by Internet. Development of this application is payed from one company and shoud be distributed to selected group of people.
What i want to ask is how to distribute this IOS application to certain audience of people (who has right to use it)? Should I put it on app store as free app without database file which should be downloaded to iphone from secret site?
The best way to do it is via the iOS Developer Enterprise Program.
As for the data, you could link it to a web API if the data is growing or changing regularly. But for static data, you could distribute it by including it in the application itself. See CoreData and other tools for more information.
You can also release it for free on App Store and provide a custom login. However, this is not recommended as this application is useless for the rest of the world. The only reason you would want to do this is if your custom clients can register on your website or some place else and you want to allow them to access the app. This is generally done for subscription based applications. But I presume yours is not such a case.
There is also Ad Hoc distribution, but with that you are limited to 100 devices.
You can read more about distribution.
Note: this may not be the bust way but here is my solution for it
I established a server and set user credentials on the server before, i share credentials with the client and he/she logs in with them.. Later they can edit their credentials, my app is on the store for any body but someone who doesnt have those credentials can't log in..
What you're trying to do is this:
https://developer.apple.com/programs/ios/enterprise/
An ad-hoc distribution is your solution.
https://developer.apple.com/programs/ios/distribute.html
If you're planning to distribute the app to more than 100 people, go for their Enterprise program:
https://developer.apple.com/programs/ios/enterprise/

Uploading Home Automation Apps on AppStore

I have made one home automation application for iPhone/iPad.
For interaction, we have to communicate with one external device.
Now my question is while submitting this application to AppStore, what information should I provide ?
Since they won't be able to test the behavior of application and might reject the app.
Or do I have to provide them the software which interacts with it
If Apple can not test your App, they will reject it. If your App requires communicating with a physical device, write a web-based simulator or something Apple can connect to from the reviewer's office. Make sure you write all required information for testing into the "Notes for reviewer" field when submitting the App. That's what I did for one of my Apps and it worked fine.

App Store submission thoughts/issues

App Store
We have been developing an app for quite some time now for a company, we're at the moment planning for the application to be submitted to the app store within a few weeks.
Lets say that the application will have around 10000 users.
Now, the application is meant to be used by the company's own clients, as they will be the only ones able to log in on said app.
Is an app, such as this, supposed to be deployed on the app store or is it supposed to be deployed using an enterprise license?
Will this cause any complications?
Android Market
Lets also say that said company wants us to develop same said app but for Android, and publish it to the Android Market.
Will google have any problems with an app that will only have selected users?
This has long been a nailbiter for me and also; said company knows more or less NOTHING about smartphone development.
Thanks in advance.
Is an app, such as this, supposed to be deployed on the app store or is it supposed to be deployed using an enterprise license?
If it's for clients, app store. The enterprise program is for distributing apps to employees.
You'll have to provide the reviewers with a test account that they can log in with, but it should be ok on the app store from what you've said.

How to restrict application distribution to a group of users only via Apple AppStore?

I'm a first time iPhone application developer and I'm developing application for my client who wish to distribute this application to a group of people related to his business only, and as FREE application only. This is such an application which is not meant for general users so we definitely don't want this application is publicly listed in Apple AppStore, rather we want to distribute application to group of people privately. Just like sending them a link to download application via email or something. They click on it and application get downloaded. But in Apple I read that two programs are available like Standard Program and Enterprise Program. The standard one will list application publicly which we do not want, and enterprise programs looks compelling for enterprise users connected to MS Exchange server which we do not posses and not even wish to setup because its not needed.
Can any one help me answer following?
1. If we go with Standard program, how can we restrict application to be visible via some AppStore link ONLY and we will send that link to our users via email.
2. If we go with Enterprise Program, can we do a simple setup over our Apache+PHP+Linux environment i.e. without involving MS Exchange server.
Thanks,
Sameer.
One way around this is to submit your application to the App Store, but put it's availability date in the future.
Then, you can create promo codes and send them to the people you'd like to be able to download your application, but it won't show up in the store.
If you do it this way, you don't need to know anybody's UDID, but you're limited to 50 people per version of your application.
If we go with Standard program, how can we restrict application to be
visible via some AppStore link ONLY
and we will send that link to our
users via email.
It is very simple: You can not. You can either manually distribute the App through AdHoc distribution (for this you will need the UDID of every single iPhone the app will be installed and afaik the the license runs out every year and needs to be renewed) or post it to the AppStore publicly but restrict access to your application by using an authentication within the App itself.
If we go with Enterprise Program, can we do a simple setup over our
Apache+PHP+Linux environment i.e.
without involving MS Exchange server.
Afaik I think this should be possible as you basically are just doing a huge AdHoc distribution, but without Exchange Server it might get a pain as you will probably also need the UDID. Yet honestly I never took any closer look at this program.
You can setup the app to require a password or hot corner when first run.
The Enterprise Program is your only viable option for a native iPhone App. Re-read the program details. It's exactly what you want.
If you deploy your App as a Web-App, you can skip this and simply deploy on the company website, so if you don't need native iPhone options, this might also be a viable way to deploy your program.
-t
You will need to qualify for the Enterprise Program: you'll need a minimum number of employees and a DUNS number. Read the Enrollment document for more information. Your situation (as described) does not sound like it qualifies.