mobileconfig installation without using Safari - ios

Regarding iOS 8 profile install...
I'm trying to figure out how to design the simplest flow for VPN profile install while using Apple guidelines as entry point, but can't find any clue of clean VPN install implementation without using Safari.
My Q is: How to build the correct structure for a fast VPN profile install.
Pls find a cool reference: ZenMate iOS app. Can you assist?
Thanks :)

Currently, the only way to install mobileconfig files are using Safari or Mail app on iOS.
To install the mobileconfig, you have some choices like:
Put the mobileconfig files on the web and open it by Safari
Send the mobileconfig by email and open it by Mail app
Package (or download) the mobileconfig files to your bundle and host a HTTP server by your app, then open the localhost link by safari through openURL: function.
Or, the iOS 8 way, using the new framework Network Extension to establish the VPN connection. And after trying the ZenMate iOS app, I believe it's what they use.
You can refer following resource for installing mobileconfig file:
Downloading "mobileconfig" file from an App
Installing a configuration profile on iPhone - programmatically
Or this link for using Network Extension:
Connect to VPN programmatically in iOS 8

Related

Universal link do not work on real devices

I'm currently working on implementing universals links into my App, they work perfectly on my simulators whether using command line xcrun simctl openurl booted or by tapping on links from messages
BUT I cannot run them on real devices (3 differents iPhones tested with 3 differents iOS 14.X versions)
App configuration > Signing and Capabilities > Associated Domains are correctly setup as applinks:<domain_name>.
I've already tried to :
uninstall/reinstall the App
clean my build repository
reboot my device
wait 5 minutes after installing the App
use another HTTP protocol for the route https://<domain>/.well-known/apple-app-site-association
tap the link from many apps (messages, discord, notes...)
expose my site with ngrok / localtunnel / apache server (in prod)
turn on/off "Associated Domains development" in Developer settings
I've verified on AASA validators sites like branch.io or appsflyer.com and everything is OK, once I reinstall the App to my iPhone, the aasa file is requested and it returns a 200 OK http response with the correct Content-Type : application/json
I ran out of idea to solve this issue. I really want to make it works before deploying the app on the Appstore even if it is working fine on simulators.
Thanks for your future help
Unfortunately, Universal links are not reliable for everyone, this seems to be an issue where the AASA files are not getting downloaded in the device.
Known Bug
There is a known universal bug for Apple where devices for iOS version 11.x+ , the AASA files do not get fetched and thus causing the Universal Links to fail.
Validate the issue
Normally, the Apple OS looks into retrying to fetch the AASA file at some time interval but the workaround might help for a test condition.
Inside the app, check if the AASA files were downloaded successfully or not. To do this:
Copy the link into your notes app.
Long-press the link till a dropdown appears. If the dropdown shows 'Open link', then Universal Links are not working for that device. If the link shows 'Open in app name', the configuration is working fine.
Backup plan
Also you can implement a fall back deeplink call on your sercerside with the help of user-agent and other stuff
In your apple-app-site-association file check if you are using "appID":".bundleid". If so, try replacing it with "appID":".bundleid" or vice-versa.

Flutter, build for IOS : Cant see the login page on Iphone

Im using Flutter on Windose to create an app for Android & IOS.
I use Codemagic to build and sign my app for Apple. The first version was ok and is live on the App Store.
But I need to implemant Sign In with Apple for the next version.
Im using this package : https://pub.dev/packages/sign_in_with_apple
it, and it works good on android, a webpage opens and I can login and get back user session..
For Apple, compilation is fine, it is pushed on Apple servers and I get the app on Testflight, but impossible to make it works, the login page is never called.
As I understand, I need to ad the "Sign in with Apple" capability.
But without XCode, I cant figure how to do that!!
Is it possible to edit the info.plist, or another file, to add this capability?
I have build and change already all the certificates, profiles... on apple console, to add the Sign In with Apple, but same result!
Thanks by advance!
with Codemagic you can connect to a build machine and use Xcode to update project settings and push the changes back to the repository.
Install VNC Viewer on your machine
Start a new build (I'd recommend using Mac Pro instance type as Xcode requires more resources)
When the build has started, click Explore build machine above the build steps to see the instructions for setting up VNC access. Use the given Host, Port, Username and Password on your VNC client to establish the connection.
read more here https://blog.codemagic.io/remote-access-to-virtual-mac-build-machine/

Open installed PWA from external url

Is there any method to open website (PWA) urls in the installed PWA in iOS- Safari?
Use case: I'm sending email links to login in my PWA, how can I make this url's open directly with the installed PWA instead of the browser?
If you are using Chrome in Android or any of the desktop OS, that would be the default behavior.
Check on "Android intent filter" in this link.
This feature is not supported in iOS yet for PWA apps(created using Safari- the only option for iOS as of June-2018).See "What PWAs can do on Android and not on iOS" section last point.
For iOS, there is actually a very unknown way which you can install a .mobileconfig profile which installs a web clip (or multiple web clips if you like).
This will run your website in fullscreen and is very similar to how iOS PWAs work. You can also link to it online or send it as an Email attachment for your users to install.
Just make sure you add this for the webpage to open fullscreen:
<key>FullScreen</key>
<true/>
You can read more about creating your own from scratch here:
https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/iPhoneOTAConfiguration/ConfigurationProfileExamples/ConfigurationProfileExamples.html
or if you have a Mac you can get the "Apple Configurator 2" App:
https://apps.apple.com/us/app/apple-configurator-2/id1037126344
or you can take the easy route and use a generator here if you don't have a Mac:
https://webclip.glitch.me/
It is possible to open PWA if already installed in desktop?
I have installed the PWA applicaiton now I want to trigger the open with prompt from chrome engine

Automatically update iOS binary (IPA) from the app with objective-c codes

I am creating a free iOS applications. I want to make clients to be able to download new version of my application from setting page of my app by pressing a button named download new version.
I had see this accepted answer that looks good for me:
https://stackoverflow.com/a/23561783/1939409
Actually I am wondering whether this solution only works for ad-hoc apps or I can use BetaBuilder to create a IPA for my final apps that should install on non jailbreak devices too?
Also is there a way that I call this URL from my app with objective-c codes so that app itself download the IPA file and install it on the device?
You can update app by providing link of app's new version only if you have generated ad-hoc or enterprise distribution build. Also your app can not download the new version on its own. You need to open browser with new version link and rest of the process will be handled by iOS.

ios Application - Manually Installation for a Custom Application

I am currently developing an iOS application for iPhone and iPad and i need to manually install the application without the need for xcode.
Is any way to install the custom application manually like the way i do with android. For example to copy the package to the phone and install it?
The idea is to update the application after every bug fix without the need of xcode because the client does not have a mac.
Thanks!
If I understand your question, then my answer will help you.
As your client doesn't having mac and assuming that you have created a build of app u want to install with valid distribution certificate.
Just upload your build here - http://www.diawi.com (You can upload provisioning profile too)
It will give you a link. just send that link to your client and let hih/her open that link in iDevice's safari browser. Then simply hit install button to install app.
Use TestFlight.
EDIT: If you want to client to know update about app, then I will suggest to go for TestFlight as you can mention the version and also can add comment about each build updated there and client can read it by logging in that app from it's device.
Easy way, Make its .ipa file upload it on here - http://www.diawi.com, it will give yoy url, this url give yor client and open it on safari, your application will install in client iphone without Xcode.
They can do it via iTunes or iPhone Configuration Utility. Refer the link

Resources