iOS app distribution without AppStore - ios

I need to publish my iOS app without using the AppStore to my final users, so I'm minding how StackExchange doing for its app: https://mobile.stackexchange.com/ios
I found this http://gknops.github.io/adHocGenerate/ and I think is the correct way.
I know that I'll miss all AppStore related features and I have to handle the app upgrade "manually", but is not a problem. What are other side effects/limits if any?
Can I use this way for production publishing without problems? Do I need to register the clients UDID to let them install the app? I can't know them...
If this is not appropriate for SO please guide me to another SE site.

Related

Block app install from AppStore and app delete using Swift

I am aware that we can block safari content using swift code. I am interested in finding out if we can restrict install of certain apps from AppStore using similar approach ?
Also, is it possible if we can restrict a user from deleting the app from device (not from phone settings but from code) ? Even if Apple does not allow that to publish such app, I am looking for a solution as a part of research.
There are two things you mentioned.
First, can restrict install of certain apps from AppStore
Using Swift code I feel there are no Public API provided by Apple for the developer till now but there is a similar way that is called Device Enrollment Program.
The Device Enrollment Program (DEP) is part of the Apple Deployment
Programs (ADP), which help businesses and educational institutions
easily deploy and configure iOS and OS X devices. DEP provides a fast,
streamlined way to deploy institutionally owned iPad and iPhone
devices and Mac computers that are purchased directly from Apple or
participating Apple Authorized Resellers or carriers.
For more visit this developer guide.
Second: restrict a user from deleting the app from device
Same response for that, till now no Developer API, but lets say if we see this as a part of research and we develop some POC still, it does not make sense for me at all (It's my device and I install the app for making my life easy and better if I don't want to use it anymore, I need an option to delete it) and I don't think so this will be possible in future as well because the USP for iOS device is user experience and we can't make this like that.
I also want to hear something from others and if possible give the use case why you are looking a solution like that.
I hope this will help.

One bundle identifier in Crashlytics for multiple apps

I have a whitelabeled app and every customer's app has its own unique bundle identifier. This causes Crashlytics to flood with different apps which potentially could have the same crash report. I would like to have it all grouped under one app, so it's easier to maintain.
I know there's a solution for Android (https://gist.github.com/tyvsmith/6188014), but couldn't find anything for iOS.
Does anybody know if this is possible for iOS and if so, how can I do this?
Mike from Fabric here.
Currently, there isn't a way to do this on iOS for Fabric. I'll let the team know you'd like to see it added in.
I have the same situation, and I've confirmed with testing today that Crashlytics forces me to have a separate app in their system for each of my customers. I suspect with Firebase/Google integration this will not change as they'll be offering a complete app framework (just as the transition from Xamarin Insights -> HockeyApp -> Microsoft Mobile Center). I reviewed the alternatives today; Raygun.com has had long-standing support for Xamarin and the only association between your app and Raygun is a text key, and it works with or without the dSYM files. So far so good!

With TestFlight being replaced by iTunes Connect, what will happen to enterprise app beta testing?

I couldn't find anything about enterprise beta testing in the iTunes Connect Developer Guide so I hope this question doesn't seem too out of place here. Also, it says here that even the beta will be subject to a review. We are using private APIs so the app will not pass the review.
What I want to be able to do is continue beta testing our enterprise apps without any AppStore reviews. Can I do this on iTunes Connect or do I have to find an alternative now? If its the second, then could you please recommend any possible alternatives. Thanks in advance!
Let's see if Apple is coming up with some updates to the current version. It's not only the Enterprise testing support that is missing ...
But you can easily jump to another Beta Distribution Platform, some free, some paid, some freemium:
https://crashlytics.com/
http://www.hockeyapp.com/
http://ubertesters.com/
https://www.testfairy.com/
http://www.applause.com/mobile-sdk
https://appblade.com/
http://www.installrapp.com/
https://deploygate.com/
... and probably others I don't know.
Or you could host your own:
http://www.hanchorllc.com/betabuilder-for-ios/
http://hockeykit.net/
I personally switched to Crashlytics, it covers all that I need and it's free. Some things are better than in TestFlight, some aren't as good. But your choice might be different - some other platforms offer crowd testing for example or premium in-app test features.
You will never pass the AppStore review when using private APIs. Thus the only possible solution is to switch to alternatives. TF is not for enterprise app testing and we need to take it as it is.
I found nice article on beta testing enterprise apps without AppStore review, not sure if it is something you were looking for, but the main point is the same as yours. When testing enterprise app, you need to support different OSs (not only iOS 8) and you need to distribute your build without any reviews. Today TF is going to shutdown these both features.

Can we use PJSIP/Siphon in our SIP Voip App

We are working on a commercial VOIP application based on SIP. We have found PJSIP/Siphon and able to compile for iOS 7. And it's working fine for us. So, our doubt is if we can use this in our app and deploy the app to app store.
Thanks.
It depends.
If you have an open-source product you can use it in the AppStore.
If you do not share your source code you must buy a license from Teluu before you launch it in the AppStore.
If you use Siphon, you will need to look at their license terms as well before pushing it to the AppStore.
Otherwise they can sue you and get your app kicked out of the stores and it can become a very expensive process for you.

How do you do "public betas" on iPad?

A friend of mine is interested in developing an iPad application, and he's heard that "most iPad apps don't offer public beta versions".
Is it true? What mechanisms can he use to distribute a private or public beta version of his app?
You can distribute them in a couple different ways:
A) distribute the source code. This will allow other developers who have an apple developer account to compile and install the app onto their iPad.
B) Release a version 1.0 on the app store and mention that it is still very rough/may have some bugs, and to please provide feedback (obviously only works for public betas)
C) Create a repository for installation of the app via something like Cydia on jailbroken devices. This will allow anyone with a jailbroken device to try your app without the need to give them the source code. Obviously this will allow you to do certain things that you wouldn't be allowed to do normally, so you'll have to make sure you don't do any of those things inadvertently.
All of this answer is re: Private beta - which is mentioned in your verbiage but not your title.
There used to be a website called ibetatest.com that did iOS beta testing (I have no affiliation with them, only remember seeing their offering, which looked interesting).
Additionally, if he wants to do it himself, he'll have to find users of the iPad who are willing to beta test for him. In the distribution instructions on the apple developers site, it will tell you how to make ad-hoc distributions available which he can then disseminate to his beta testers.
This is the short answer, it's quite involved, but once you've gotten to that point, it's something he will be intimately involved with.

Resources