Branch link opens Ionic 3 app, which immediately closes before loading - ionic-framework

I'm configuring Branch and seeing what I think is unexpected behavior upon trying to test my setup. I have an Ionic 3.7 app and am new to Ionic/iOS/Android development- so I've been following the Branch docs to try and get this configured (just for iOS right now).
What I've done so far:
I started with this guide: https://dev.branch.io/getting-started/sdk-integration-guide/guide/cordova/
The pre-requisite is that Universal Links are setup, which makes sense. In order to get that working, I clicking the link in the guide above, which took me to this guide: https://dev.branch.io/getting-started/universal-app-links/guide/cordova/
The Universal Link steps have gone fine until #3, where I'm trying to verify that my setup is correct. I created a Quick Link and texted it to my phone (which had a build of my app that I ran after adding the config in step 2).
Clicking the link starts to open the app (I see the splash screen), but it closes before loading is complete (I see a black screen momentarily). When I open this build of the app normally, it loads and runs normally
As I mentioned, I'm new to this- do I need to follow the Apple Universal Link setup (from here) with the apple-app-site-association file before starting the Branch config? I didn't see any mention of that in the guides I followed- however, it may be something so basic that it's assumed the user has done it already.
Regardless, I did configure that file and make it available as the Apple guide says. I'm still seeing the same behavior when I click my Branch link.
The 2nd Branch guide I posted only mentions that the app opens immediately without routing through Safari as a result of the test- is what I'm seeing actually correct? I don't have the SDK installed to handle the links, so I could see that being the case too.
UPDATE
I went ahead and installed the SDK, following the instructions here. It was somewhat confusing, as I wasn't sure if I should be supplementing the additions to config.xml from my step 1) above, or if my branch-config section should only have the keys from the SDK installation example.
I ended up commenting out the changes to config.xml from step 1) and it looks like it worked, as I now see the deeplink data when opening the app via the Quick Link I created before. I had previously added the domains to my entitlements file directly in Xcode before, though, so I'm now wondering if I need those extra config keys in order to persist the entitlements changes should I need to remove/readd the iOS platform.

Amruta from Branch.io here:
You can follow the iconic integration guide available on Github here.You need to update your config.xml with the Branch key assigned to your App, which can be found on the Account Settings page of the Branch dashboard. The URI scheme is the one you have defined in the Link Settings page of the Branch dashboard and the link domain for your Branch links is also defined on the Link Settings Page.
If you still have issues, I would recommend writing to integrations#branch.io.

Related

Google Assistant Hello World Draft Project not updating

Very new to Google Actions. Testing out tutorial stuff.
I have tried this in a couple of test projects just to double check. After initial run of any project I do not get any updates on draft projects. No changes show up in draft projects for me for both simulator and real device.
Started new project
Even blank project has basic conversation telling you where to add things next.
Change text.
Notice prompt does not change in testing environment.
In below pictures I have changed the words "hello world" with "Hey Dude" for both fulfillment and console output. I would expect Testing Prompt to respond with "Hey Dude from fulfillment and Hey Dude from the console!" But it does not. Instead it does not reflect any recent changes.
I think there may be two slightly different (but sometimes related) issues going on here.
The first is that there are known problems with the simulator being slow to pick up on updates, or them not seeming to show up. The second has to do with making sure you're deploying changes from the build-in code editor.
I don't have a clear answer to the first problem, although I know they're looking into it. I find that I can make some changes and they may not be noticed, but I know they have been picked up if I see the "Your preview is being updated..." spinner appear. There are other spinners that sometimes appear, but unless it explicitly says that it is being updated - the updates aren't always picked up. (Sometimes they are, however.)
Usually, if I don't see this, I'll go back and force an apparent change (delete a character from a webhook handler name, then add it back) and go back to the simulator. In general, this time it will say it is updating.
If you're using the Cloud Functions editor, you need to do three things:
Save the changes. You'll do this by clicking the "Save Fulfillment" button, but this only saves it so you can leave the editor. It doesn't mean that the simulator has access to it yet.
Deploy the changes. This deploys your code to Cloud Functions so they can be run. Note in the illustration that it says the code is saved, but not yet deployed.
Wait till the changes are fully deployed. Deploying takes time, and until it is completed, it won't be available in the simulator. While deploying, it lets you know.
Once it has deployed, however, the message changes, and you the impacts should be available through the simulator (although you may still need to see the "being updated" message to be sure).
Remember, however, that you don't need to use the "Cloud Functions editor" in order to deploy a webhook. You can deploy a webhook on any web server where
The host is public (so has a public IP address that Google can reach)
It can handle HTTPS with a non-self-signed certificate
You can even deploy yourself to Cloud Functions for Firebase, which is the same service that the Actions Builder uses. This way you have the URL set once in the Actions Builder and, once it is set, you won't need to change it.
But you'll still be able to change your code by managing your own deployment separate from Actions Builder.

Update android internal test app in developer console

We have an app launched in google playstore.I made some changes to the app and uploaded a new version to the internal test track. While doing the internal test, we identified an issue and i wanted to update internal test app "with the same version number". Since the app is not released to Alpha or beta test, is it possible to update it? If so how do i do that?
Just had the same problem, this is what I found out:
According to the Docs (https://support.google.com/googleplay/android-developer/answer/113476?hl=de) the version code must be higher for an update.
Just increment it, as it is not shown to the user anyways. The release-name, which is shown to the user, can stay the same.
So to update, I tried the following:
On the internal test track, click 'Manage'
Inside of this track, click 'Create Release'
Set everything up as you want (there is a copy from previous release option at the bottom), just make sure the version code has been incremented, so you can upload your apk. Then, check and release the app.
Once you are done, previous bundles are no longer provided, and existing testers should be able to update.
Hope this works for you.

Content not refreshing in Google assistant, but works fine in Dialog Flow

I have been searching so long for this, and couldn't find a solution.
So, I have developed a pretty basic dialog flow project and deployed it onto firebase using inline editor.
Now the 1st deployment works perfectly fine with the simulator.
However, I changed some content to include suggestion chips and modify the responses as well; this gets reflected fine in dialog flow. And I can see the changes I have made.
But when I update the Draft and try to test it again in simulator/google assistant device, it doesn't load the newer changes. I am not sure if what I am doing is correct or not.
Please help :(
Just now found this - https://discuss.api.ai/t/actions-on-google-integration-agent-updates-do-not-always-publish-correctly/7483
It seems many users are facing this issue.. :/
Dialogflow had a bug causing this issue which should now be fixed.

Creating a Box web app integration / callback that works only on folders?

I'm trying to create a web app integration for Box.com that is available from folders, like the "Send with Gmail" or "Send to Chatter" actions. It seems that integrations that we create from http://developers.box.com only work from files, and not from folders.
I did something similar to that in the past and I vaguely remember that the Box.com support team had to modify by action from their back-end to enable it; I compared integrations in my previous app with the new one I created and I see no visible difference in the configuration.
Has anyone done something similar recently and know the current procedure? I also tried opening a support case from their website and it hasn't been answered either.
The Box support team got back to me on this one and changed the configuration of my web app integration. It's now working the way I expect. They confirmed that they're the only one capables of doing this configuration change - it's not possible to do it from developers.box.com. If anyone needs that - just open a support case on community.box.com and they'll do it for you.

Old version of Unity WebPlayer binary gets loaded from cache, using Facebook Unity integration

We are in the process of switching our game from our own canvas page, to using the Unity integration on Facebook. However, during our development tests we have occasionally run into a problem where the webplayer binary gets loaded from the browser cache, even though a newer version was uploaded to the server.
Manually clearing the browser cache solves the problem, but that's not exactly a solution we want to present to our users all the time. Previously, when we embedded the unity object ourselves, we also passed in a ?version flag with the url, which would keep it up to date, but we can't exactly do that anymore with integration turned on, unless we manually update the binary location link in our app settings every time we do a build (Kind of a pain in the butt, since the rest of our build process is automated)
Is there any way around this?
Thanks.
We have exactly same problem and I can say only solution is to change the binary file name everytime you made a build but only for your production environment. Here is our solution:
We have development (sandbox mode)and production environment and one app for each one.
For development, we ran everything locally, we have buildpipeline that builds and copies the binary file to appropriate place with the same name always like MyGame.unity3d, and we have set our browsers not to cache anything, that solves the problem for testing.
For production, our buildpipeline constructs the binary name with:
YourGameNameMainVersion.SubVersion.TimeStamp like: MyGame0.3.1006-1004.unity3d and this one is manually set from facebook's app settings page in every build. But this is not a big problem as you won't want to make a new build more than once/twice a day for production.
We've found that all that needs to be done is to add "?version=xxxx"
This works, and perfectly fine. I do now, is only change version (?version=1.52) in main link:
<a href="http://cometoplaynow.com/Labyrinth3D/Labyrinth3D.html?version=1.52">
Have advantages using it:
Changing only 1 number - link is still the same (if people open game from your site)
Savings will stay as it was (if you change .unity3d you will lost PlayerPrefs).