前人未踏の領域へ Androidアプリ開発編

Androidアプリ開発に関する調査メモ置き場。古い記事にはアプリ以外も含まれます。

UIモジュールでAndroidTestを実行する

課題

UI用のモジュールを作成し、AndroidTestを実行しようとしたところ、いくつかエラーが発生したのでメモ

対応

モジュール側のAndroidManifestに以下を記述する

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <application>
        <activity
            android:name="androidx.activity.ComponentActivity"
            android:exported="true" />
        <property
            android:name="android.adservices.AD_SERVICES_CONFIG"
            android:resource="@xml/gma_ad_services_config"
            tools:replace="android:resource" />
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="@string/ads_app_id" />
    </application>
</manifest>
  • ComponentActivityを定義
  • Manifest merger failed 対策として android.adservices.AD_SERVICES_CONFIGtools:replace="android:resource"設定
  • AdMobを使っている場合は com.google.android.gms.ads.APPLICATION_ID を追加

また、テストでespressoを使っている場合はbuild.gradleで以下の記述も必要になるかと

    configurations.configureEach {
        exclude(group = "com.google.protobuf", module = "protobuf-lite")
    }