Merge "Bump CaptivePortalLogin target SDK to 34" into main am: e60c53b7dd am: 37d8d960f6

Original change: https://android-review.googlesource.com/c/platform/packages/modules/CaptivePortalLogin/+/2817255

Change-Id: Ia5424a7aefd6122a6ec585766f57de44069aacd2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/Android.bp b/Android.bp
index b8f7892..0925b9e 100644
--- a/Android.bp
+++ b/Android.bp
@@ -23,7 +23,7 @@
     srcs: ["src/**/*.java"],
     sdk_version: "system_current",
     min_sdk_version: "30",
-    target_sdk_version: "33", // Keep in sync with CaptivePortalLoginTests
+    target_sdk_version: "34", // Keep in sync with CaptivePortalLoginTests
     static_libs: [
         "androidx.annotation_annotation",
         "androidx.legacy_legacy-support-core-ui",
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 18759dd..b04519c 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -31,6 +31,7 @@
     <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
     <uses-permission android:name="android.permission.MAINLINE_NETWORK_STACK" />
     <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
     <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
 
     <!-- The login activity can start downloads, and in cases where the download is an APK,
@@ -60,7 +61,10 @@
                 <category android:name="android.intent.category.DEFAULT"/>
             </intent-filter>
         </activity>
-        <service android:name=".DownloadService" android:exported="false" />
+        <!-- TODO(b/309362084): use a "data-initiated data transfer job" instead of a foreground
+        service for downloads -->
+        <service android:name=".DownloadService" android:exported="false"
+                 android:foregroundServiceType="dataSync" />
         <provider
             android:name="androidx.core.content.FileProvider"
             android:authorities="com.android.captiveportallogin.fileprovider"
diff --git a/tests/Android.bp b/tests/Android.bp
index fd14436..179c65f 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -27,7 +27,7 @@
     platform_apis: true,
     compile_multilib: "both",
     min_sdk_version: "30",
-    target_sdk_version: "33", // Keep in sync with CaptivePortalLogin
+    target_sdk_version: "34", // Keep in sync with CaptivePortalLogin
     test_suites: ["general-tests", "mts-networking"],
     test_config: "AndroidTest.xml",
 
diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml
index 6fbe419..308335c 100644
--- a/tests/AndroidManifest.xml
+++ b/tests/AndroidManifest.xml
@@ -42,7 +42,7 @@
             android:name="com.android.captiveportallogin.CaptivePortalLoginActivityTest$InstrumentedCaptivePortalLoginActivity"/>
         <activity android:name="com.android.captiveportallogin.DownloadServiceTest$RequestDismissKeyguardActivity"/>
         <activity android:name="com.android.captiveportallogin.DownloadServiceTest$OpenTextFileActivity"
-                  android:exported="false" >
+                  android:exported="true" >
             <intent-filter>
                 <action android:name="android.intent.action.VIEW" />
                 <category android:name="android.intent.category.DEFAULT" />