How to test the "open-in-app" feature for the branch link created using Branch.io in development build? - ios

I have an application which is already in App Store.I have to check the branch linking feature I added using Branch.io in development build.That is, when a user shares something on social networks, clicking on the shared post should open the application installed. So how do I check this functionality in development build?

Alex from Branch.io here: Branch doesn't know (or care) how the application is installed onto your device. Installing directly from Xcode and using a beta distribution system (TestFlight, Hockey, Fabric, etc.) are treated exactly the same way as going through the App Store.
Here is a flow you can use to test this:
Install a build of your app that includes the Branch SDK
Generate a link and post it somewhere like iOS Notes
Uninstall your app
Open the link and let it redirect all the way through to the App Store page
Close the App Store
Install a build of your app locally (using either Xcode or TestFlight/Fabric/etc.)
Open your app
The link data will be returned to you, exactly the same way it would be when your app is installed from the App Store by a user.

Related

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/

Deploying React Native Apps directly to devices for testing

I'm looking into the best ways to deploy React Native apps to devices for testing. We don't want to put the app on the app store yet, but we do want the app to be downloadable to, say, an iPad.
What is the best way to do this? Do I need a testing platform or something like diawi? Or can I just put the file in an email and install it from there?
Anyway for deploying an iOS application, you have to follow the standard developer portal process. If you already did that then all good to go otherwise you just need to follow this tutorial.
Once you are done with code signing create a build using XCode Archive. This will generate .ipa file for you OR you can upload that to the testflight. If you want to skip testflight, there is one more tool available called diawi.Diawi gives you a link instantly using which you can deploy the application on test devices.
For iOS apps, test flight is the best way to go about this. https://developer.apple.com/testflight/
for Android , use internal testing and beta testing of google play
check android documentation of internal testing here
for IOS,use test flight

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 different bundle ids map to the same app

I'm trying to follow the convention described in this answer to manage both an app store and enterprise version of the same app but am seeing some really interesting behavior.
As described in the linked answer I've created a new scheme, defined a new 'Enterprise' build configuration and set up the enterprise scheme to use a separate and new bundle id. Both schemes point to the same target which relies on the new build config to toggle behavior. I am successfully able to generate an enterprise build and distribute it over-the-air, however, when I install both versions of the same app on the same simulator or phone the enterprise version actually runs the app store version of the app. Any changes that I make that are enterprise specific do not get reflected. Even when I close the app - the iOS7 animation back to the home screen animates back to the app store icon - not the enterprise one.
Obviously I want to be able to maintain these as separate versions that run independently. I feel like I must be fundamentally misunderstanding targets and schemes to get this kind of behavior. Any help would be greatly appreciated.
Pretty interesting bug.
What was happening was:
We were using facebook login to authenticate with our own services on the enterprise version.
The FB SDK would take over and kick out to a web/view or the fb app, depending on it's own logic. Critically - we were using the same facebook "app" configured on their developer site.
When fb returned it would call the url scheme denoted by fb{app_id}
iOS decided (consistently) to open the app that was first-installed that would respond to that URL scheme. In most cases this was the app-store version NOT the enterprise version.
The solution for this - maybe obviously at this point - is to use two different facebook apps so that iOS can route the returning OAuth response to the proper app. In keeping with the answer that I was originally working off this is best done by...
Creating a new user defined build setting entitled FACEBOOK_ID
Use your production app id for Debug and Release, while using the new id for Enterprise.
In your info.plist, change the value of your FacebookAppID to be ${FACEBOOK_ID}
In your URL Types, change the facebook scheme to be fb${FACEBOOK_ID}
This should successfully route your facebook login.
Keep in mind this is a general potential bug for ALL deep links - not just facebook login.
It is easier to use URL Scheme Suffix instead of separate Facebook apps. With URL Scheme Suffix you can add suffixes to the bundle id, for example: com.example.App.live and com.example.App.beta. That way the Facebook url scheme knows which app to open after authentication.
See the documentation on Facebook's developer site for more into: https://developers.facebook.com/docs/ios/troubleshooting#sharedappid

how to add one or more plugins to an existing app

My company want to make an application which like a bookshelf can load more books when the application finished, they want the application to be able to load more plugins without destroying the already installed code: when the app has been purchased and downloaded from the app store, the user can buy plugins in the app store and install them into the app.
Can anyone tell me how this could be achieved? Thank you very much.
Implementing A Plugin System in C or C++
Xcode & iOS - Create Plugins?
How can I combine multiple iPhone applications in to one application?
Objective-C Plugin Architecture Security (Mac, not iPhone)
Objective-C and designing a plugin mechanism
https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFPlugIns/CFPlugIns.html
You have to choose right platform for creating plugins and then you need to link installed plugins to correct app
I don't think you'll be able to check that before installing plugins the app has to be installed
Second way will be using in-app purchase and downloading plugins to program data directory
I think the second way is more usable and more valid, because in AppStore cannot be sold application which is not standalone, and depends on another app.

Resources