Add instrumentation test to privacy sandbox sdk test project.
Added a few test cases (mostly ignored) to a connected test which
goes through core deployment flows.
Test: PrivacySandboxSdkConnectedTest
Bug: 240533883
Change-Id: Iad6d06a80fde1185d01b044ac8120958cc762a3b
diff --git a/build-system/integration-test/connected/src/test/java/com/android/build/gradle/integration/connected/application/PrivacySandboxSdkConnectedTest.kt b/build-system/integration-test/connected/src/test/java/com/android/build/gradle/integration/connected/application/PrivacySandboxSdkConnectedTest.kt
new file mode 100644
index 0000000..89bbd33
--- /dev/null
+++ b/build-system/integration-test/connected/src/test/java/com/android/build/gradle/integration/connected/application/PrivacySandboxSdkConnectedTest.kt
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.build.gradle.integration.connected.application
+
+import com.android.build.gradle.integration.common.fixture.GradleTestProject.Companion.builder
+import com.android.build.gradle.integration.connected.utils.getEmulator
+import com.android.ddmlib.AndroidDebugBridge
+import com.android.ddmlib.IDevice
+import org.junit.Before
+import org.junit.ClassRule
+import org.junit.Ignore
+import org.junit.Rule
+import org.junit.Test
+import java.util.concurrent.TimeUnit
+
+
+/**
+ * Connected tests using UTP test executor.
+ */
+class PrivacySandboxSdkConnectedTest {
+ init {
+ AndroidDebugBridge.init(true)
+ }
+ // private val adb: AndroidDebugBridge by lazy { AndroidDebugBridge.createBridge(10, TimeUnit.SECONDS) }
+ private val adb: AndroidDebugBridge = AndroidDebugBridge.createBridge(10, TimeUnit.SECONDS)
+ private lateinit var device: IDevice
+
+ @get:Rule var project = builder()
+ .fromTestProject("privacySandboxSdk/libraryAndConsumer")
+ .create()
+
+ @Before
+ fun setUp() {
+ // fail fast if no response
+ project.addAdbTimeout();
+ adb.hasInitialDeviceList()
+ assert(adb.devices.size == 1)
+ device = adb.devices[0]
+
+ device.uninstallPackage("com.example.rubidumconsumer")
+ device.uninstallPackage("com.example.rubidumconsumer.test")
+ device.uninstallPackage("com.myrbsdk_10000")
+ }
+
+ @Test
+ fun `connectedAndroidTest task, SDK preinstalled`() {
+ project.execute(":app:buildPrivacySandboxSdkApksForDebug")
+ device.installPackage(
+ project.getSubproject("app").getIntermediateFile(
+ "extracted_apks_from_privacy_sandbox_sdks",
+ "debug",
+ "ads-sdk",
+ "standalone.apk"
+ ).path,
+ /* reinstall */ true
+ )
+ project.execute("connectedAndroidTest")
+ }
+
+ @Test
+ @Ignore // This doesn't work because deployment is not handled yet.
+ fun `connectedAndroidTest task`() {
+ project.execute("connectedAndroidTest")
+ }
+
+ @Test
+ @Ignore // This doesn't work because deployment is not handled yet.
+ fun `install and uninstall works for both SDK and APK`() {
+ project.execute("installDebug")
+ // Verify both APKs are installed here.
+ project.execute("uninstallAll")
+ // Verify both APKs are deleted
+ }
+
+ companion object {
+ @JvmField @ClassRule val emulator = getEmulator()
+ }
+}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/build.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/build.gradle
index 8549509..733f73e 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/build.gradle
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/build.gradle
@@ -4,7 +4,7 @@
android {
namespace 'com.example.ads_sdk_implementation'
- compileSdk = 33
+ compileSdkPreview = 'TiramisuPrivacySandbox'
defaultConfig {
minSdk 33
@@ -19,4 +19,4 @@
dependencies {
implementation 'androidx.annotation:annotation:1.2.0-rc01'
-}
\ No newline at end of file
+}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/src/main/java/com/myrbsdk/MyAdsSdkEntryPoint.java b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/src/main/java/com/myrbsdk/MyAdsSdkEntryPoint.java
index f98e95c..38e31f8 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/src/main/java/com/myrbsdk/MyAdsSdkEntryPoint.java
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-implementation/src/main/java/com/myrbsdk/MyAdsSdkEntryPoint.java
@@ -3,11 +3,11 @@
import android.app.sdksandbox.SandboxedSdkContext;
import android.app.sdksandbox.SandboxedSdkProvider;
import android.content.Context;
+import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
-import android.widget.TextView;
-
+import android.widget.LinearLayout;
import androidx.annotation.RequiresApi;
@@ -26,9 +26,14 @@
@Override
public View getView(Context windowContext, Bundle bundle) {
Log.i("SDK", "getView");
- TextView textView = new TextView(windowContext);
- textView.setText("Hello from the SDK!");
- return textView;
+
+ LinearLayout layout = new LinearLayout(windowContext);
+ layout.setLayoutParams(new LinearLayout.LayoutParams(
+ LinearLayout.LayoutParams.MATCH_PARENT,
+ LinearLayout.LayoutParams.MATCH_PARENT
+ ));
+ layout.setBackgroundColor(Color.RED);
+ return layout;
}
@Override
@@ -36,3 +41,4 @@
Log.i("SDK", "onDataReceived");
}
}
+
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/build.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/build.gradle
deleted file mode 100644
index dd089fd..0000000
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/build.gradle
+++ /dev/null
@@ -1,18 +0,0 @@
-plugins {
- id 'com.android.library'
-}
-
-android {
- namespace 'com.example.ads_sdk_stub'
- compileSdk = 33
-
- defaultConfig {
- minSdk 33
- testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
- }
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
-}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/AndroidManifest.xml b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/AndroidManifest.xml
deleted file mode 100644
index abfbe8f..0000000
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android">
- <application></application>
-</manifest>
\ No newline at end of file
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/assets/example.txt b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/assets/example.txt
deleted file mode 100644
index e69de29..0000000
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/assets/example.txt
+++ /dev/null
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/java/com/myrbsdk/MyAdsSdkEntryPointStub.java b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/java/com/myrbsdk/MyAdsSdkEntryPointStub.java
deleted file mode 100644
index 3c37999..0000000
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk-stub/src/main/java/com/myrbsdk/MyAdsSdkEntryPointStub.java
+++ /dev/null
@@ -1,3 +0,0 @@
-package com.myrbsdk;
-
-public class MyAdsSdkEntryPointStub {}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk/build.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk/build.gradle
index 4ba4257..d7f6d1d 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk/build.gradle
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/ads-sdk/build.gradle
@@ -3,19 +3,17 @@
}
android {
- compileSdk = 33
+ compileSdkPreview 'TiramisuPrivacySandbox'
minSdk = 33
namespace = "com.example.adssdk"
bundle {
packageName = "com.myrbsdk"
- // TODO(b/240533883): Import the T preview SDK and use the implementation class instead
- sdkProviderClassName = "com.myrbsdk.MyAdsSdkEntryPointStub"
+ sdkProviderClassName = "com.myrbsdk.MyAdsSdkEntryPoint"
setVersion(1, 0, 0)
}
}
-// TODO(b/240533883): Import the T preview SDK and use the implementation module instead.
dependencies {
- include project(':ads-sdk-stub')
+ include project(':ads-sdk-implementation')
}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/build.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/build.gradle
index 20c32a7..a650b29 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/build.gradle
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/build.gradle
@@ -1,31 +1,38 @@
plugins {
- id 'com.android.application'
- id 'org.jetbrains.kotlin.android'
+ id 'com.android.application'
+ id 'org.jetbrains.kotlin.android'
}
android {
- namespace 'com.example.rubidumconsumer'
- compileSdk = 33
- defaultConfig {
- applicationId "com.example.rubidumconsumer"
- minSdk 24
- targetSdk 33
- versionCode 1
- versionName "1.0"
- }
+ namespace 'com.example.rubidumconsumer'
+ compileSdkPreview = 'TiramisuPrivacySandbox'
+ defaultConfig {
+ applicationId "com.example.rubidumconsumer"
+ minSdk 24
+ targetSdk 34
+ versionCode 1
+ versionName "1.0"
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
- kotlinOptions {
- jvmTarget = '1.8'
- }
+ testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+ }
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
+ kotlinOptions {
+ jvmTarget = '1.8'
+ }
}
dependencies {
- implementation project(':ads-sdk')
- implementation 'androidx.core:core-ktx:1.6.0'
- implementation 'androidx.appcompat:appcompat:1.3.0'
- implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
-}
\ No newline at end of file
+ implementation project(':ads-sdk')
+ implementation 'androidx.appcompat:appcompat:1.4.1'
+
+ // This is implementation because of https://github.com/android/android-test/issues/1412
+ // (or https://issuetracker.google.com/issues/240993946)
+ // It needs to merge the underlying bootstrap activities to the main manifest
+ implementation 'androidx.test.ext:junit:1.1.3'
+ testImplementation 'junit:junit:4.13.2'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
+}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/androidTest/java/com/example/rubidumconsumer/MainActivityTest.kt b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/androidTest/java/com/example/rubidumconsumer/MainActivityTest.kt
new file mode 100644
index 0000000..4266984
--- /dev/null
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/androidTest/java/com/example/rubidumconsumer/MainActivityTest.kt
@@ -0,0 +1,25 @@
+package com.example.rubidumconsumer
+
+import android.graphics.Color
+import androidx.test.ext.junit.rules.ActivityScenarioRule
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.platform.app.InstrumentationRegistry
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+
+@RunWith(AndroidJUnit4::class)
+class MainActivityTest {
+
+ @get:Rule var rule = ActivityScenarioRule(MainActivity::class.java)
+
+ @Test
+ fun viewIsUpdatedBySdk() {
+ InstrumentationRegistry.getInstrumentation().apply {
+ waitForIdle {
+ val bitmap = uiAutomation.takeScreenshot()
+ assert(bitmap.getPixel(bitmap.width / 2, bitmap.height / 2) == Color.RED)
+ }
+ }
+ }
+}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/MainActivity.java b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/MainActivity.java
index 885a39c..36579a5 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/MainActivity.java
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/MainActivity.java
@@ -1,57 +1,62 @@
-// TODO(b/240533883): Re-enable commented out parts when the T preview SDK is imported
package com.example.rubidumconsumer;
import android.annotation.SuppressLint;
-// import android.app.sdksandbox.SdkSandboxManager;
+import android.app.sdksandbox.SdkSandboxManager;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.view.SurfaceControlViewHost;
+import android.view.SurfaceView;
import android.view.View;
-
-//import com.example.rubidumconsumer.databinding.ActivityMainBinding;
+import android.view.WindowManager;
+import android.view.WindowMetrics;
@SuppressLint("NewApi")
public class MainActivity extends AppCompatActivity {
- static final String SDK_PACKAGE_NAME = "com.myrbsdk"; // Needs to be the package name of the SDK as defined in the SdkModulesConfig.pb.json when building the SDK
+ // Needs to be the package name of the SDK as defined in the SdkModulesConfig.pb.json when building the SDK
+ static final String SDK_PACKAGE_NAME = "com.myrbsdk";
- //private SdkSandboxManager sdkSandboxManager;
+ private SdkSandboxManager sdkSandboxManager;
- //private RemoteSdkCallbackImpl callback;
- //private ActivityMainBinding binding;
+ private RemoteSdkCallbackImpl callback;
+ private SurfaceView renderedView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- //binding = ActivityMainBinding.inflate(getLayoutInflater());
- //View view = binding.getRoot();
- //setContentView(view);
- //sdkSandboxManager = getApplicationContext().getSystemService(
- // SdkSandboxManager.class);
+ setContentView(R.layout.activity_main);
+ renderedView = findViewById(R.id.rendered_view);
+ sdkSandboxManager = getApplicationContext().getSystemService(
+ SdkSandboxManager.class);
}
@Override
public void onResume() {
super.onResume();
- //binding.renderedView.setZOrderOnTop(true);
- //binding.renderedView.setVisibility(View.INVISIBLE);
-
- //callback = new RemoteSdkCallbackImpl(this);
- //sdkSandboxManager.loadSdk(SDK_PACKAGE_NAME, new Bundle(), Runnable::run, callback);
+ renderedView.setVisibility(View.INVISIBLE);
+ callback = new RemoteSdkCallbackImpl(this);
+ sdkSandboxManager.loadSdk(SDK_PACKAGE_NAME, new Bundle(), Runnable::run, callback);
}
- //void requestSurfacePackage() {
- // sdkSandboxManager.requestSurfacePackage(
- // SDK_PACKAGE_NAME, getDisplay().getDisplayId(),
- // 200, 200, new Bundle(), Runnable::run, callback);
- //}
- //
- //void renderSurfaceView(SurfaceControlViewHost.SurfacePackage surfacePackage) {
- // new Handler(Looper.getMainLooper()).post(() -> {
- // binding.renderedView.setChildSurfacePackage(surfacePackage);
- // binding.renderedView.setVisibility(View.VISIBLE);
- // });
- //}
+ void requestSurfacePackage() {
+ final WindowMetrics metrics = getApplicationContext().getSystemService(
+ WindowManager.class).getCurrentWindowMetrics();
+
+ sdkSandboxManager.requestSurfacePackage(
+ SDK_PACKAGE_NAME, getDisplay().getDisplayId(),
+ metrics.getBounds().width(),
+ metrics.getBounds().height(),
+ new Bundle(),
+ Runnable::run,
+ callback);
+ }
+
+ void renderSurfaceView(SurfaceControlViewHost.SurfacePackage surfacePackage) {
+ new Handler(Looper.getMainLooper()).post(() -> {
+ renderedView.setChildSurfacePackage(surfacePackage);
+ renderedView.setVisibility(View.VISIBLE);
+ });
+ }
}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/RemoteSdkCallbackImpl.java b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/RemoteSdkCallbackImpl.java
index cd84e34..76e87ef 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/RemoteSdkCallbackImpl.java
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/java/com/example/rubidumconsumer/RemoteSdkCallbackImpl.java
@@ -1,44 +1,43 @@
-// TODO(b/240533883): Re-enable commented out parts when the T preview SDK is imported
-//package com.example.rubidumconsumer;
-//
-//import android.annotation.SuppressLint;
-//import android.app.sdksandbox.SdkSandboxManager.LoadSdkCallback;
-//import android.app.sdksandbox.SdkSandboxManager.RequestSurfacePackageCallback;
-//import android.os.Bundle;
-//import android.util.Log;
-//import android.view.SurfaceControlViewHost;
-//import androidx.annotation.NonNull;
-//
-//@SuppressLint("NewApi")
-//public class RemoteSdkCallbackImpl implements LoadSdkCallback, RequestSurfacePackageCallback {
-//
-// RemoteSdkCallbackImpl(MainActivity mainActivity) {
-// this.mainActivity = mainActivity;
-// }
-//
-// private MainActivity mainActivity;
-//
-// @Override
-// public void onLoadSdkSuccess(Bundle bundle) {
-// Log.i("App", "onLoadSdkSuccess");
-// mainActivity.requestSurfacePackage();
-// }
-//
-// @Override
-// public void onLoadSdkFailure(int errorCode, String errorMessage) {
-// Log.i("App", String.format("onLoadSdkFailure. Error code: %d, Error message: %s",errorCode, errorMessage));
-// }
-//
-// @Override
-// public void onSurfacePackageReady(@NonNull SurfaceControlViewHost.SurfacePackage surfacePackage,
-// int i, @NonNull Bundle bundle) {
-// Log.i("App", "onSurfacePackageReady");
-// mainActivity.renderSurfaceView(surfacePackage);
-// }
-//
-// @Override
-// public void onSurfacePackageError(int errorCode, String errorMessage) {
-// Log.i("App", "onSurfacePackageError");
-// }
-//}
+package com.example.rubidumconsumer;
+
+import android.annotation.SuppressLint;
+import android.app.sdksandbox.SdkSandboxManager;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.SurfaceControlViewHost;
+import androidx.annotation.NonNull;
+
+@SuppressLint("NewApi")
+public class RemoteSdkCallbackImpl implements SdkSandboxManager.LoadSdkCallback, SdkSandboxManager.RequestSurfacePackageCallback {
+
+
+ RemoteSdkCallbackImpl(MainActivity mainActivity) {
+ this.mainActivity = mainActivity;
+ }
+
+ private MainActivity mainActivity;
+
+ @Override
+ public void onLoadSdkSuccess(Bundle bundle) {
+ Log.i("App", "onLoadSdkSuccess");
+ mainActivity.requestSurfacePackage();
+ }
+
+ @Override
+ public void onLoadSdkFailure(int errorCode, String errorMessage) {
+ Log.i("App", String.format("onLoadSdkFailure. Error code: %d, Error message: %s",errorCode, errorMessage));
+ }
+
+ @Override
+ public void onSurfacePackageReady(@NonNull SurfaceControlViewHost.SurfacePackage surfacePackage,
+ int i, @NonNull Bundle bundle) {
+ Log.i("App", "onSurfacePackageReady");
+ mainActivity.renderSurfaceView(surfacePackage);
+ }
+
+ @Override
+ public void onSurfacePackageError(int errorCode, String errorMessage) {
+ Log.i("App", "onSurfacePackageError");
+ }
+}
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/res/layout/activity_main.xml b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/res/layout/activity_main.xml
index 03ad632..1b878ac 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/res/layout/activity_main.xml
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/app/src/main/res/layout/activity_main.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
@@ -7,10 +7,6 @@
tools:context=".MainActivity">
<SurfaceView
android:id="@+id/rendered_view"
- android:layout_width="200dp"
- android:layout_height="200dp"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"/>
-</androidx.constraintlayout.widget.ConstraintLayout>
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"/>
+</LinearLayout>
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/build.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/build.gradle
index a1fefff..a5a7957 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/build.gradle
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/build.gradle
@@ -1,23 +1,11 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+apply from: "../commonHeader.gradle"
+
buildscript {
+ apply from: "../commonHeader.gradle" // for $kotlinVersion
+ apply from: "../commonBuildScript.gradle"
- ext.kotlin_version = 'to-be-replaced-by-AndroidGradleTests'
-
- repositories {
- // This will be populated by AndroidGradleTestCase
- google()
- mavenCentral()
- }
- dependencies {
- classpath 'com.android.tools.build:gradle:0.0.0' // The version will be populated by AndroidGradleTestCase
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- }
+ dependencies {
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$rootProject.kotlinVersion"
+ }
}
-
-allprojects {
- repositories {
- // This will be populated by AndroidGradleTestCase
- google()
- mavenCentral()
- }
-}
-
diff --git a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/settings.gradle b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/settings.gradle
index 528e5f3..288816b 100644
--- a/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/settings.gradle
+++ b/build-system/integration-test/test-projects/privacySandboxSdk/libraryAndConsumer/settings.gradle
@@ -1,4 +1,5 @@
+apply from: "../commonLocalRepo.gradle", to: pluginManagement
+
include ':app'
-// TODO(b/240533883): Import the T preview SDK and use the implementation module instead.
-include ':ads-sdk-stub'
+include ':ads-sdk-implementation'
include ':ads-sdk'