Make Subscriptions available in Google PlayStore - xamarin.forms

I am using InAppBilling plugin in a Xamarin.Forms solution.
IAP works in iOS and the app is approved and ready to release.
HOWEVER, I'm having issues getting this to work with the Google PlayStore.
The PlayStore returns the message: [productSKU] does not exist.
But that subscription item is clearly in the PlayStore AND activated with the exact SKU I'm using.
Does anyone know why a subscription item cannot be found or reached?
And yes, I've double checked and triple checked that the right SKU was being passed in in this:
var purchase = await billing.PurchaseAsync(**productId**, ItemType.Subscription, verify);
Is there any other obscure setting in the PlayStore that would cause this item to not be found?

After digging through docs and getting this working, here are some tips for those who could do with some help.
Upload your signed .apk or app bundle to the PlayStore in Closed Testing.
Submit for review. May take a few days (3 days for mine).
Promote the approved app to the Alpha track and you probably have [yourapp] Track1 too.
Setup you IAPs and activate.
Set you app as "Published" in Advanced Settings. This will trigger a review but it should be quick if the app has already been reviewed.
You CANNOT test AIPs from debug mode. You need to build in release and sign, then deploy to testing device THEN try purchase your item(s).
If I figure out how to step through in debug mode, I'll see if I can add to this later.

Related

Firebase Assistant not showing up for new projects in Android Studio

I've been trying to figure this out for several hours with no luck.
In older Flutter projects within Android Studio the Firebase Assistant appears in my Menu Tool-> Firebase; however, when I start new Flutter projects Firebase Assistant does not appear in the Tool's menu. Trying to open Firebase using search, produces a search result, but launching it fails (just an endless loading screen).
I've tried all of the listed items in these previously asked questions:
Firebase assistant not showing in Android Studio 3.4.1
Unable to find Tools > Firebase in Android studio 2.2.3
Firebase assistant not showing in Studio 2.2.3
I am using Android Studio 4.2.1
I've run updates on everything that I can think of to update.
The generally accepted answer in the previously asked questions referenced above is to ensure that the three Firebase plugins are enabled. I've verified that they are:
In older projects where Firebase Assistant appears in the Tools menu, if I disable the three plugins and restart, Firebase Assistant disappears from old projects. When I then re-enable them and restart, Firebase Assistant returns to the Tools menu in older projects. However, in a freshly created Flutter project, disabling and re-enabling the plugins does not cause Firebase Assistant to appear in the tools menu.
One person suggested making sure that you are logged into your Google account. I'm logged in, but that doesn't change anything.
I don't understand why it is available in old projects, but not in new projects.
I assume I'm simply overlooking something.
Any suggestions?
Thanks
EDIT:
Since posting this question, I have tried completely uninstalling Android Studio and performing a clean install of it, Flutter and Dart. However, I have the same result. Older projects have Firebase Assistant and new projects don't.
While trying to figure out the differences between the two projects in the hope of finding something which might explain why one project does have the Firebase Assistant available and new projects do not have Firebase Assistant available, despite having all the same plugins, build.gradle information and pubspec.yaml information, I happened to notice one difference.
In my older projects, the ones that have Firebase Assistant available, if I right click on the project's lib folder and try to add a folder, instead of being able to add a "directory", it gives me the option to add a "package". Here is a screenshot of what it looks like:
However, in my new projects, the menu looks different. It says "directory" instead of "package" as shown here:
I don't know if whatever is different about my projects that is causing one to say "package" and the other to say "directory" is the reason that the project with "package" in the menu has access to Firebase Assistant, while the one with "directory" does not; however, I suspect that it might be.
I haven't been able to find anything that explains why one project would have "package" while another has "directory"; does anyone have an explanation? I would love to test out whether that difference is the reason Firebase Assistant isn't appearing.
You can try to run 'flutter clean', then re-sync the graddle.
I am assuming you are running android studio in administrator mode ? I had problems if I was not in administrator mode.

Missing Signed in status and acitve user increasing significantly in Firebase Dashboard

i just suddenly facing anomaly on my Firebase Dashboard after releasing new build version
Signed in Status where i usually filtering active user based on user_id is suddenly missing from the dashboard
this is the screenshot of my Firebase Project - Production (after new release)
it suppose to be like this :
this is screenshot of my Firebase project - development. (both before and after new release, nothing changed)
the other problem is coming when i look at the number of MAU/WAU/DAU, it was increased significantly within only one day.
active user still in 4.0 Mio
screenshot before release new version
next day after release, active user jump into 5.8 mio
screenshot after release new version
have someone ever faced similar issue and escaping out from this ? please help if you have any solution to fix this issue. this number is invalid and should be reported to management in weekly basis.
thanks for your attention :)

Firebase Crashlytics For Xamarin iOS- Missing dSYM files

Need Help !!
We are getting caution message on top of the Dashboard in Firebase Crashlytics. We are tried with different technical advises in different forums.
But nothing has worked out for us. We are still seeing the caution message at the top (in red strip) and crashes count is incrementing on every crash but doesn't come to Dashboard.
Here we go with our Firebase Crashlytics integration with project :
We are using Firebase Crashlytics with Xamarin Forms project to record any crashes in Mobile Application.
Since, Firebase Crashlytics SDK & Documentation are mostly on Native Platforms (Android & iOS). But, we still got provision to get packages from NuGet.
Here is the checklist which ensures we are on right direction:
1) Is App released with proper Apple Distribution Provision Profile and Certificate- YES
2) Is Distribution Provision Profile valid in terms expiration date - YES, it is valid till Next year from now.
3) Is GoogleService-Info.plist correctly placed. YES- it was downloaded from Crashlytics console with proper identifier configured. File was placed at root of iOS Project and set Build Action as BundleResource.
4) Did we call required initialisation function at proper place. - YES. Below set of codes ensures we initialised properly Firebase Crashlytics in AppDelegate.cs class.
5) Is your build configuration rightly placed in Release mode. YES
6) Important Point: Firebase Crashlytics was able to process the reported crashes with earlier version of iOS build which were having same project and package configuration and we could able to see the Crashes in readable format till for immediate previous versions.
But suddenly it stopped working when we promoted to production in AppStore (means LIVE in AppStore)
7) Have we uploaded to dSYM file manually to Firebase Crashlytics - YES we TRIED. We followed the steps to upload dSYM using XCode-SWIFT project with POD files.
Here is the setup and step.
POD was installed in appropriate XCode workspaces.
Run Script was executed with recommended POD commands.
Build was succeeded.
Hence, as you see, we are practiced with every advises whichever mentioned in any forum. We have applied, but we don't see, it is coming to Crashlytics Dashboard even then.
Try below command. May be help full.
msbuild "/Users/xxx/projects/myApp/myApp/myApp.iOS/myApp.iOS.csproj" /t:"build" /p:Configuration="AppStore" /p:Platform="iPhone" /p:BuildIpa=true /p:FirebaseCrashlyticsUploadSymbolsEnabled=true
I have tried this command and it is working in my case. I get it from this git thread : https://github.com/xamarin/GoogleApisForiOSComponents/issues/386

Failures in "Pre-Launch report" in Google Play Developer Console in Google VR startup

I've been working on a game using Google VR in Unity3d and I recently updated my version of unity3d and the (built in) Google VR SDK to the latest version. After doing so the pre-launch report (automated testing on firebase) is showing crashes, during the unity splash screen, on 5 out of 6 devices.
This is the issue that is reported:
Issue: Crash of app uk.co.softkitty.puzzleroom running instrumentation ComponentInfo{com.google.android.apps.mtaas.crawler/android.support.test.runner.AndroidJUnitRunner}
Not very helpful, it looks like a generic unit test result if the app closes unexpectedly . I've looked through the logs and cant find anything unusual from my app or unity, but I did find something. It looks to me like this may be being caused by the test script itself:
10-27 01:54:54.494: I/ViewInteraction(19677): Performing 'single click' action on view (with class name: is "android.widget.ImageButton" and with id: uk.co.softkitty.puzzleroom:id/ui_back_button ...............
This to me, looks like the test runner is exploring the app UI and the first thing it does is click the "back" button. Which I would expect to close the app. I also tried using Firebase directly, which seemed to confirm it:
Firebase Activity Map
Does that seem likely that this is just a bug/red herring caused by changes to unity/GVR Or even firebase? Has anyone else experienced this?
I just don't want to release it if it really is crashing on so many devices!
Many Thanks
I asked Google Play Support about this and they got back to me.
They have confirmed that the issue is caused by a new crawler used by the Pre-Launch report. Details can be found here under the section "Pre-launch report versions"
They've escalated the issue and have also provided a workaround:
Sign in to your Play Console.
Select an app.
Select Release management > Pre-launch report > Settings.
In the “Pre-launch report version” section, move the Opt-out switch
to the right until it turns blue.
I haven't verified this yet but will mark as answer once I have.
Edit
I have tested this and all the tests pass again so this looks like a good solution for now.
We got this when uploading our APK as well. It started October 27th and crashed the following 4 days until we changed our setup. I couldn't see anything in our code base that should trigger this problem, so I wonder if it's related to changes on Google's side.
However, we did just did two changes and now everything's working again.
We added the following line to proguard-project.txt:
-keep class android.arch.** { *; }
I assume this was what fixed it.
At the same time we changed the compileSdkVersion and targetSdkVersion to 27 (and correspondingly all belonging support libs). For all I know they could have fixed it here too..
Edit:
To more directly answer your question: Yes, it does seem likely that this is just a bug/red herring, not on Unity's side, but in Firebase Test Lab or in Google's support lib. I tested the APK that failed the pre-launch tests and it worked just fine on my device.

After integration firebase + gtm ,events is not shown in google analytics

I followed this link - https://developers.google.com/tag-manager/ios/v5/.
I can see my events in firebase console but not in google analytics.I defined my custom as well as default apple logevents.As it is also coming in my console "[Firebase/Analytics][I-ACS023024] No data to upload. Upload task will not be scheduled". I am using xcode 8.3.2 and swift3.Please help if anyone implemented.
There could be a few issues that can cause this. And more information is needed to find the cause, best place to look is the debug console in xCode.
GTM container is not setup correctly.
GTM Tags are not setup correctly.
The App/SDK checks for newer versions of the GTM container in 12 hour intervals. So if you did run the app for testing with a container with no tags, then added the tags to test for GA input, then the new container will not be used, until it gets the new container 12 or so hours later. (Work around for me was to uninstall the app from the simulator and run it again in xCode, just to be safe I clean the code too before running again. I did read somewhere that there was code to always check for newer containers, but I never got that to work)
Would be good if you can provide more information from the xCode debug console.

Resources