Skip to content

Commit fbe9141

Browse files
committed
No public description
PiperOrigin-RevId: 601757223
1 parent b5be78b commit fbe9141

File tree

3 files changed

+38
-2
lines changed

3 files changed

+38
-2
lines changed

src/main/AndroidManifest.xml

+4-2
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
xmlns:tools="http://schemas.android.com/tools"
2020
package="com.afwsamples.testdpc"
2121
tools:ignore="MissingClass"
22-
android:versionCode="9002"
23-
android:versionName="9.0.2">
22+
android:versionCode="9003"
23+
android:versionName="9.0.3">
2424
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="33"/>
2525

2626
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
@@ -39,6 +39,7 @@
3939
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
4040
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
4141
<uses-permission android:name="com.google.android.setupwizard.SETUP_COMPAT_SERVICE" />
42+
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
4243

4344
<uses-feature android:name="android.hardware.wifi" android:required="false" />
4445
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
@@ -177,6 +178,7 @@
177178
<intent-filter>
178179
<action android:name="android.app.action.CHOOSE_PRIVATE_KEY_ALIAS"/>
179180
<action android:name="android.app.action.NETWORK_LOGS_AVAILABLE"/>
181+
<action android:name="android.app.action.SECURITY_LOGS_AVAILABLE"/>
180182
</intent-filter>
181183
</receiver>
182184

src/main/java/com/afwsamples/testdpc/DelegatedAdminReceiver.java

+11
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,14 @@
2121
import android.content.Intent;
2222
import android.net.Uri;
2323
import android.os.Build.VERSION_CODES;
24+
import android.util.Log;
25+
import android.widget.Toast;
2426

2527
@TargetApi(VERSION_CODES.Q)
2628
public class DelegatedAdminReceiver extends android.app.admin.DelegatedAdminReceiver {
2729

30+
private static final String TAG = "DelegatedAdminReceiver";
31+
2832
@Override
2933
public String onChoosePrivateKeyAlias(
3034
Context context, Intent intent, int uid, Uri uri, String alias) {
@@ -36,4 +40,11 @@ public void onNetworkLogsAvailable(
3640
Context context, Intent intent, long batchToken, int networkLogsCount) {
3741
CommonReceiverOperations.onNetworkLogsAvailable(context, null, batchToken, networkLogsCount);
3842
}
43+
44+
@Override
45+
public void onSecurityLogsAvailable(
46+
Context context, Intent intent) {
47+
Log.i(TAG, "onSecurityLogsAvailable() called");
48+
Toast.makeText(context, R.string.on_security_logs_available, Toast.LENGTH_LONG).show();
49+
}
3950
}

src/main/java/com/afwsamples/testdpc/PolicyManagementActivity.java

+23
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,19 @@
1616

1717
package com.afwsamples.testdpc;
1818

19+
import android.Manifest;
1920
import android.R.id;
2021
import android.app.Fragment;
2122
import android.app.FragmentManager;
23+
import android.content.pm.PackageManager;
2224
import android.os.Bundle;
25+
import android.os.Build;
2326
import android.util.Log;
2427
import android.view.Menu;
2528
import android.view.MenuItem;
29+
import androidx.appcompat.app.AppCompatActivity;
30+
import androidx.core.app.ActivityCompat;
31+
import androidx.core.content.ContextCompat;
2632
import com.afwsamples.testdpc.common.DumpableActivity;
2733
import com.afwsamples.testdpc.common.OnBackPressedHandler;
2834
import com.afwsamples.testdpc.policy.PolicyManagementFragment;
@@ -89,6 +95,8 @@ protected void onResume() {
8995
if (lockModeCommand != null) {
9096
setLockTaskMode(lockModeCommand);
9197
}
98+
99+
askNotificationPermission();
92100
}
93101

94102
@Override
@@ -177,4 +185,19 @@ private void setLockTaskMode(String action) {
177185
Log.e(TAG, "invalid lock-task action: " + action);
178186
}
179187
}
188+
189+
private void askNotificationPermission() {
190+
// This is only necessary for API level >= 33 (TIRAMISU)
191+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
192+
if (ContextCompat.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS)
193+
== PackageManager.PERMISSION_GRANTED) {
194+
Log.d(TAG, "Notification permission granted");
195+
} else {
196+
Log.e(TAG, "Notification permission missing");
197+
// Directly ask for the permission
198+
ActivityCompat.requestPermissions(
199+
this, new String[] {Manifest.permission.POST_NOTIFICATIONS}, 101);
200+
}
201+
}
202+
}
180203
}

0 commit comments

Comments
 (0)