To build the example with CocoaPods do the following steps:
Install build tools
Install Ruby with rbenv on macOS and install CocoaPods without sudo
:
gem install cocoapods
To build the example with CocoaPods do the following steps:
Install Ruby with rbenv on macOS and install CocoaPods without sudo
:
gem install cocoapods
According to the official repository docs I tried to install CocaPods:
sudo gem install cocoapods
but got the following error:
ERROR: Error installing cocoapods:
The last version of drb (>= 0) to support your Ruby & RubyGems was 2.0.6. Try installing it with `gem install drb -v 2.0.6` and then running the current command again
drb requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210.
Installed some dependencies and the installation of CocoaPods succeeded:
sudo gem install drb -v 2.0.6
sudo gem install activesupport -v 6.1.7.8
sudo gem install cocoapods
QT generates gradle.properties
with the following values:
android.useAndroidX=true
android.enableJetifier=true
androidBuildToolsVersion=34.0.0
androidCompileSdkVersion=34
androidNdkVersion=26.2.11394342
buildDir=build
qt5AndroidDir=C:/dev/libs/Qt6/android/release/arm64-v8a/./src/android/java
qtAndroidDir=C:/dev/libs/Qt6/android/release/arm64-v8a/./src/android/java
qtMinSdkVersion=23
qtTargetAbiList=arm64-v8a
qtTargetSdkVersion=33
It is clear enough from Google docs how to show consent form in an Android app with Google Mobile Ads SDK:
First I call requestConsentInfoUpdate
and then I call loadAndShowConsentFormIfRequired
that shows the consent form if required.
I did not test this code, but as far as I can guess, Google Mobile Ads SDK checks if the user belongs to the region GDPR applies to, shows its own consent form and internally saves a flag indicating if the user agreed (pressed some Allow button in consent form).
(more…)There was an ANR in my Android app, but a few days later Yandex Mobile Ads started to actively crash messing up my statistics:
(more…)I got ANR in my Android app on HUAWEI HWJMM (honor 6C Pro) Android 7.0 (SDK 24) with the following stack trace:
at J.N.M1Y_XVCN (Native method)
at org.chromium.content.browser.BrowserStartupControllerImpl.b (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:10)
at org.chromium.content.browser.BrowserStartupControllerImpl.i (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:62)
at hp.run (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:59)
at org.chromium.base.ThreadUtils.f (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:7)
at org.chromium.android_webview.AwBrowserProcess.l (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:23)
at com.android.webview.chromium.M.e (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:146)
at com.android.webview.chromium.M.b (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:172)
at com.android.webview.chromium.WebViewChromiumFactoryProvider.getWebViewDatabase (chromium-Monochrome.aab-stable-<US_SOCIAL_SECURITY_NUMBER>:7)
at android.webkit.WebViewDatabase.getInstance (WebViewDatabase.java:38)
at com.yandex.mobile.ads.impl.e6.a (SourceFile:7)
at com.yandex.mobile.ads.impl.m60.a (SourceFile:4)
at com.yandex.mobile.ads.impl.dd.t (SourceFile:1)
at com.yandex.mobile.ads.impl.dd$a.run (SourceFile:3)
at android.os.Handler.handleCallback (Handler.java:846)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loop (Looper.java:205)
at android.app.ActivityThread.main (ActivityThread.java:6783)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1225)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1086)