diff --git a/.editorconfig b/.editorconfig index d2ff04496..093f3a5ed 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,2 +1,3 @@ [*.{java,kt}] max_line_length = 120 +indent_size = 2 diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index a67dcb938..f53ebbb97 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -8,15 +8,14 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 + - uses: actions/checkout@v4 - name: Check Snippets run: python scripts/checksnippets.py - - name: Install NDK - run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.0.6113669" --sdk_root=${ANDROID_SDK_ROOT} + - name: set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: 17 + distribution: temurin - name: Build with Gradle (Pull Request) run: ./build_pull_request.sh if: github.event_name == 'pull_request' diff --git a/admob/app/build.gradle b/admob/app/build.gradle deleted file mode 100644 index 5bf4c008c..000000000 --- a/admob/app/build.gradle +++ /dev/null @@ -1,37 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' - -android { - compileSdkVersion 30 - - defaultConfig { - applicationId "com.google.firebase.example.admob" - minSdkVersion 16 - targetSdkVersion 30 - versionCode 1 - versionName "1.0" - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } -} - -dependencies { - implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'androidx.browser:browser:1.0.0' - implementation 'androidx.appcompat:appcompat:1.1.0' - implementation "com.google.firebase:firebase-ads:19.3.0" - - // For an optimal experience using AdMob, add the Firebase SDK - // for Google Analytics. This is recommended, but not required. - implementation 'com.google.firebase:firebase-analytics:17.4.4' - - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.72" -} - -apply plugin: 'com.google.gms.google-services' diff --git a/admob/app/build.gradle.kts b/admob/app/build.gradle.kts new file mode 100644 index 000000000..927ef663c --- /dev/null +++ b/admob/app/build.gradle.kts @@ -0,0 +1,53 @@ +plugins { + id("com.android.application") + id("kotlin-android") + id("com.google.gms.google-services") +} + +android { + namespace = "com.google.firebase.example.admob" + compileSdk = 36 + + defaultConfig { + applicationId = "com.google.firebase.example.admob" + minSdk = 23 + targetSdk = 36 + versionCode = 1 + versionName = "1.0" + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + multiDexEnabled = true + } + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro") + } + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + kotlinOptions { + jvmTarget = "17" + } +} + +dependencies { + implementation("androidx.legacy:legacy-support-v4:1.0.0") + implementation("androidx.browser:browser:1.5.0") + implementation("androidx.appcompat:appcompat:1.7.1") + implementation("com.google.firebase:firebase-ads:23.6.0") + implementation("androidx.constraintlayout:constraintlayout:2.2.1") + implementation("androidx.multidex:multidex:2.0.1") + + // [START gradle_play_config] + implementation("com.google.android.gms:play-services-ads:24.7.0") + // [END gradle_play_config] + + // Import the Firebase BoM (see: https://firebase.google.com/docs/android/learn-more#bom) + implementation(platform("com.google.firebase:firebase-bom:34.5.0")) + + // For an optimal experience using AdMob, add the Firebase SDK + // for Google Analytics. This is recommended, but not required. + implementation("com.google.firebase:firebase-analytics") +} diff --git a/admob/app/proguard-rules.pro b/admob/app/proguard-rules.pro index af6097fd5..4f3270429 100644 --- a/admob/app/proguard-rules.pro +++ b/admob/app/proguard-rules.pro @@ -2,7 +2,7 @@ # By default, the flags in this file are appended to flags specified # in /Users/ianbarber/Library/Android/sdk/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. +# directive in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/admob/app/src/main/AndroidManifest.xml b/admob/app/src/main/AndroidManifest.xml index 9a8cb74a6..eea1a17de 100644 --- a/admob/app/src/main/AndroidManifest.xml +++ b/admob/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + xmlns:tools="http://schemas.android.com/tools"> - + + diff --git a/admob/app/src/main/java/com/google/firebase/example/admob/MainActivity.java b/admob/app/src/main/java/com/google/firebase/example/admob/MainActivity.java index d8c706f93..c35e46b7d 100644 --- a/admob/app/src/main/java/com/google/firebase/example/admob/MainActivity.java +++ b/admob/app/src/main/java/com/google/firebase/example/admob/MainActivity.java @@ -1,6 +1,7 @@ package com.google.firebase.example.admob; import android.os.Bundle; + import androidx.appcompat.app.AppCompatActivity; import com.google.android.gms.ads.MobileAds; @@ -12,8 +13,7 @@ public class MainActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // ... - // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 - MobileAds.initialize(this, "YOUR_ADMOB_APP_ID"); + MobileAds.initialize(this); } // [END ads_on_create] diff --git a/admob/app/src/main/java/com/google/firebase/example/admob/kotlin/MainActivity.kt b/admob/app/src/main/java/com/google/firebase/example/admob/kotlin/MainActivity.kt index c058a8a60..62f780441 100644 --- a/admob/app/src/main/java/com/google/firebase/example/admob/kotlin/MainActivity.kt +++ b/admob/app/src/main/java/com/google/firebase/example/admob/kotlin/MainActivity.kt @@ -10,8 +10,7 @@ class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // ... - // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 - MobileAds.initialize(this, "YOUR_ADMOB_APP_ID") + MobileAds.initialize(this) } // [END ads_on_create] } diff --git a/admob/app/src/main/res/layout/activity_main.xml b/admob/app/src/main/res/layout/activity_main.xml index 3e3fc69be..c5540456d 100644 --- a/admob/app/src/main/res/layout/activity_main.xml +++ b/admob/app/src/main/res/layout/activity_main.xml @@ -1,18 +1,49 @@ - + + + + + +