Proper way to branch iOS & Android AdMob App ID Development & Production settings in Flutter - flutter

I'm using AdMob in Flutter, and I can branch the Ad Unit ID via kDebugMode. However, the AdMob App ID is hardcoded into AndroidManifest.xml (Android) and Info.plist (iOS) respectively. I cannot apply the checking of debug mode in these files.
How can I switch between debug and production modes to use different AdMob App IDs? Thanks.
I heard I can use Product Flavors, but I'm unsure it's the right way to do so.
in iOS, I add an user-defined settings in Build Settings named ADMOB_APPID, then in Info.plist, I use the value $(ADMOB_APPID) in GADApplicationIdentifier property.
But I have no clue how I can do it in Android.

Related

After application uses the same package name in AppGallery and GooglePlaystore, it is removed due to Google Play protection

Application is removed playstore by Google Protect.
Every release the version code from Huawei App Gallery is always higher than the version code in Play Store.
The new release version code in the Play Store will higher than the previous release version code in both Play Store and App Gallery.
But the rolling out percentage between the two stores is different. Not sure it would affect
Please help with another quick question. What will happen to App Gallery auto-update if we release the app in Huawei App Store with a different Keystore than the release in Google Play Store?
For the overwriting of each other from AppGallery and Google Play store problem, the root cause is the apps are using the same package name and the same signing key in conjunction with auto-update from both stores. When there is a higher version available from either store, the Android system would recognize it, download and update the app, which would cause overwrite.
The answer is actually in the second question. Using a new keystore for AppGallery would make the app different from the app from GPS from Android system point of view. Please use a new keystore for AG release, there will not be any overwritten problem once this update. Remember to update the SHA256 signature in AG for the new release.
This is a message displayed on Google Protect. We could not restrict the play protect. You can disable Google Protect on your phone manually.
In addition, Google Protect is a black-box detection, which is claimed to be an intelligent detection and may display a message for all apps that are not downloaded by Google Play.
Based on the warning message, this message comes in "Backdoor" category(refer below link).
https://developers.google.com/android/play-protect/warning-strings
Also you can refer the below link
https://developers.google.com/android/play-protect/client-protections#developer-appeal
So you can contact google support team regarding this.

Unity ads displaying an ad example and not the real ads

http://prntscr.com/cv3hc3 and http://prntscr.com/cv3hh0 seems to be perfectly set up, while my ads still display the "unity ads" example. How can I display real ads and get money from it?
Turning test mode in the UnityAds dashboard on and back off again did it!
Have you set test mode to false? this is from the Unity blog:
If we are running our project in the
editor we will see a generic billboard ad. If we are running this on
device and test mode is set to true (see above) then we will see a
placeholder ad. Finally, if we are on device and test mode is false we
will see a real live ad.
source: https://blogs.unity3d.com/2015/04/09/integrating-unity-ads/
I am not sure if your build target is properly set up, but this is a point worth mentioning as well:
NOTE: Since ads are currently only supported for iOS and Android, your
editor will have to be targeting one of those platforms in order to
see any test ads. Before going further you may want to switch your
platform to either iOS or Android in the Unity build settings
(File->Build Settings)
source https://blogs.unity3d.com/2015/04/09/integrating-unity-ads/
just uncheck the TestMode in services then try to build the app and install it in real devices then it works great.

Application not running in apple watch simulator due to bundle identifier issue

I'm building an apple watch application for which i created a AppGroup and also setting the provisioning profile and the certificate.
Now the issue is while building/running the "watchkit app" xcode is throwing an error saying,
warning: Capabilities that require entitlements from “appname WatchKit Extension/appname WatchKit Extension.entitlements" may not function in the Simulator because the provisioning profile specified in your build settings (“WatchKitProfile”) has an AppID of “com.id.watchApp” which does not match your bundle identifier “com.id.watchApp.watchkitextension”.
and nothing is showing in the applewatch simulator.But application is working fine in iPhone simulator.
Even the applewatch methods are not calling WKInterfaceController.openParentApplication
One more doubt, I'm using the appgroup which already used by other members.Will this create any problem or is this the issue for this warning.
Can anyone please help me on this.
When you create an App ID, you need to regenerate your provisioning profiles because they will not have the newly created App ID listed. Xcode can do this for you automatically as a "Fix Issue" prompt.
Ensure once you have created your App ID, you add it both the main app and the watch kit app extension via the capabilities tab and click on Fix Issues until it is all ok.

Missing submodule 'homeKit' Error while building sample app on XCode6 on Mavericks

I've been trying to create a sample app using HomeKit Framework. while writing the code, everything seems fine. But while building it, IDE throughs ample number of errors and a warning "Missing subModule 'HomeKit' ".
I am using Xcode6 IDE on Mavericks.
Highlight: I tried to google it, found a sample code on github & tried to build it on my IDE n guess what, same result for that too.
Any Idea?
I have used the given sample code, its great demo app.
However, you must have "Paid Apple developer account".
After that the simplest way is, login with the apple developer account in Xcode.
(Xcode Menu->Preferances->Accounts)
Give full bundle identifier like com.myCompanyName.homekitApp
Now select project in Xcode, go to targets, In "General" tab select the "Team" it will display list of teams for accounts you have login to.
Now go to Capabilities enable Homekit, Xcode will automatically configure create application id, provisioning profile for given bundle identifier.
Varify all tick mark in Capabilities for Homekit.
without a apple developer ID you can't use the HomeKit framework .
make sure that you added the capability

Customizing settings.bundle in iphone

I want to make app settings using plist like the Twitter app settings and have my app name's status appear as "Installed" like done in Twitter.
If I understand correctly, you want your app in the twitter setting of settings app.
Well I sorry to tell you that that is not possible.
The twitter setting in the settings is build by apple to only detect the official twitter app.
If you just want you app under the settings app the read this: Implementing an iOS Settings Bundle
Twitter is able to do that because Apple has included it as part of the OS core functionality. In other words, if Twitter is not installed then the Twitter settings are still available because Twitter can be used even with the app.
You can't do this with your app because if the app isn't installed then the settings won't appear anyway. Your settings will only show if the app is installed so saying 'installed' is redundant and unnecessary.