<?xml version="1.0" encoding="UTF-8"?>
<!-- This file should not be edited manually! See go/template-diff-tests -->
<issues format="6" by="lint %AGP_VERSION_PLACEHOLDER%" type="baseline" client="gradle" dependencies="false" name="AGP (%AGP_VERSION_PLACEHOLDER%)" variant="all" version="%AGP_VERSION_PLACEHOLDER%">

    <issue
        id="MissingPermission"
        message="Call requires permission which may be rejected by user: code should explicitly check to see if permission is available (with `checkPermission`) or explicitly handle a potential `SecurityException`"
        errorLine1="        mNotificationManager.notify(conversationId, builder.build())"
        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="105"
            column="9"/>
    </issue>

    <issue
        id="MissingPermission"
        message="Missing permissions required by NotificationManagerCompat.notify: android.permission.POST_NOTIFICATIONS"
        errorLine1="        mNotificationManager.notify(conversationId, builder.build())"
        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="105"
            column="9"/>
    </issue>

    <issue
        id="NotificationPermission"
        message="When targeting Android 13 or higher, posting a permission requires holding the `POST_NOTIFICATIONS` permission"
        errorLine1="        mNotificationManager.notify(conversationId, builder.build())"
        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="105"
            column="9"/>
    </issue>

    <issue
        id="OldTargetApi"
        message="Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the `android.os.Build.VERSION_CODES` javadoc for details."
        errorLine1="        targetSdk 35"
        errorLine2="        ~~~~~~~~~~~~">
        <location
            file="build.gradle"
            line="15"
            column="9"/>
    </issue>

    <issue
        id="UnusedAttribute"
        message="Attribute `appCategory` is only used in API level 26 and higher (current min is 23)"
        errorLine1="        android:appCategory=&quot;audio&quot;"
        errorLine2="        ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/main/AndroidManifest.xml"
            line="10"
            column="9"/>
    </issue>

    <issue
        id="ExportedReceiver"
        message="Exported receiver does not require permission"
        errorLine1="        &lt;receiver"
        errorLine2="         ~~~~~~~~">
        <location
            file="src/main/AndroidManifest.xml"
            line="24"
            column="10"/>
    </issue>

    <issue
        id="ExportedReceiver"
        message="Exported receiver does not require permission"
        errorLine1="        &lt;receiver"
        errorLine2="         ~~~~~~~~">
        <location
            file="src/main/AndroidManifest.xml"
            line="31"
            column="10"/>
    </issue>

    <issue
        id="ExportedService"
        message="Exported service does not require permission"
        errorLine1="        &lt;service"
        errorLine2="         ~~~~~~~">
        <location
            file="src/main/AndroidManifest.xml"
            line="20"
            column="10"/>
    </issue>

    <issue
        id="HandlerLeak"
        message="This `Handler` class should be static or leaks might occur (template.test.in.MyMessagingService.IncomingHandler)"
        errorLine1="    internal inner class IncomingHandler : Handler(Looper.myLooper()!!) {"
        errorLine2="                         ~~~~~~~~~~~~~~~">
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="111"
            column="26"/>
    </issue>

    <issue
        id="LaunchActivityFromNotification"
        message="Notifications should only launch a `BroadcastReceiver` from notification actions (`addAction`)"
        errorLine1="            .setContentIntent(readPendingIntent)"
        errorLine2="             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="99"
            column="14"/>
        <location
            file="src/main/java/template/test/in/MyMessagingService.kt"
            line="56"
            column="33"
            message="This `BroadcastReceiver` intent is launched from a notification; this is discouraged except as notification actions"/>
    </issue>

</issues>
