ultrasonic-app-subsonic-and.../ultrasonic/lint-baseline.xml

710 lines
25 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<issues format="6" by="lint 7.1.1" type="baseline" client="gradle" dependencies="false" name="AGP (7.1.1)" variant="all" version="7.1.1">
<issue
id="InflateParams"
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout&apos;s root element)"
errorLine1=" val view = inflater.inflate(R.layout.jukebox_volume, null)"
errorLine2=" ~~~~">
<location
file="src/main/kotlin/org/moire/ultrasonic/service/JukeboxMediaPlayer.kt"
line="331"
column="66"/>
</issue>
<issue
id="PluralsCandidate"
message="Formatting %d followed by words (&quot;tracks&quot;): This should probably be a plural rather than a string"
errorLine1=" &lt;string name=&quot;select_album.n_selected&quot;>%d tracks selected&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
line="154"
column="5"/>
</issue>
<issue
id="AllowAllHostnameVerifier"
message="Using the `AllowAllHostnameVerifier` HostnameVerifier is unsafe because it always returns true, which could cause insecure network traffic due to trusting TLS/SSL server certificates for wrong hostnames"
errorLine1=" public static final X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER = new AllowAllHostnameVerifier();"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/java/org/moire/ultrasonic/service/ssl/SSLSocketFactory.java"
line="142"
column="73"/>
</issue>
<issue
id="TrustAllX509TrustManager"
message="`checkClientTrusted` is empty, which could cause insecure network traffic due to trusting arbitrary TLS/SSL certificates presented by peers">
<location
file="org/moire/ultrasonic/api/subsonic/SubsonicAPIClient$allowSelfSignedCertificates$trustManager$1.class"/>
</issue>
<issue
id="TrustAllX509TrustManager"
message="`checkServerTrusted` is empty, which could cause insecure network traffic due to trusting arbitrary TLS/SSL certificates presented by peers">
<location
file="org/moire/ultrasonic/api/subsonic/SubsonicAPIClient$allowSelfSignedCertificates$trustManager$1.class"/>
</issue>
<issue
id="ExportedContentProvider"
message="Exported content providers can provide access to potentially sensitive data"
errorLine1=" &lt;provider"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="135"
column="10"/>
</issue>
<issue
id="ExportedReceiver"
message="Exported receiver does not require permission"
errorLine1=" &lt;receiver android:name=&quot;.receiver.UltrasonicIntentReceiver&quot;>"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="74"
column="10"/>
</issue>
<issue
id="ExportedService"
message="Exported service does not require permission"
errorLine1=" &lt;service android:name=&quot;.playback.PlaybackService&quot;"
errorLine2=" ~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="64"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise. For launcher activities, this should be set to `true`."
errorLine1=" &lt;activity android:name=&quot;.activity.NavigationActivity&quot;"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="41"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver android:name=&quot;.receiver.UltrasonicIntentReceiver&quot;>"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="74"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="86"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="97"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="108"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="119"
column="10"/>
</issue>
<issue
id="IntentFilterExportedReceiver"
message="As of Android 12, `android:exported` must be set; use `true` to make the activity \&#xA;available to other apps, and `false` otherwise."
errorLine1=" &lt;receiver android:name=&quot;.receiver.MediaButtonIntentReceiver&quot;>"
errorLine2=" ~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
line="130"
column="10"/>
</issue>
<issue
id="ObsoleteLayoutParam"
message="Invalid layout param in a `LinearLayout`: `layout_above`"
errorLine1=" android:layout_above=&quot;@+id/bottom&quot;>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/time_span_dialog.xml"
line="12"
column="9"/>
</issue>
<issue
id="ObsoleteLayoutParam"
message="Invalid layout param in a `LinearLayout`: `layout_below`"
errorLine1=" android:layout_below=&quot;@+id/top&quot;>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/time_span_dialog.xml"
line="28"
column="9"/>
</issue>
<issue
id="Overdraw"
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/NoActionBar`)"
errorLine1=" a:background=&quot;@drawable/appwidget_dark_bg_trans&quot;"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="7"
column="5"/>
</issue>
<issue
id="Overdraw"
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/NoActionBar`)"
errorLine1=" a:background=&quot;@drawable/appwidget_dark_bg_trans&quot;"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="7"
column="5"/>
</issue>
<issue
id="Overdraw"
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/NoActionBar`)"
errorLine1=" a:background=&quot;@drawable/appwidget_dark_bg_trans&quot;"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="7"
column="5"/>
</issue>
<issue
id="Overdraw"
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/NoActionBar`)"
errorLine1=" a:background=&quot;@drawable/appwidget_dark_bg_trans&quot; >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="8"
column="5"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_baseline_close` appears to be unused"
errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
errorLine2="^">
<location
file="src/main/res/drawable/ic_baseline_close.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_menu_arrow` appears to be unused"
errorLine1="&lt;vector xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;"
errorLine2="^">
<location
file="src/main/res/drawable/ic_menu_arrow.xml"
line="1"
column="1"/>
</issue>
<issue
id="IconDuplicates"
message="The following unrelated icon files have identical contents: list_pressed_holo_dark.9.png, list_pressed_holo_light.9.png">
<location
file="src/main/res/drawable-hdpi/list_pressed_holo_light.9.png"/>
<location
file="src/main/res/drawable-hdpi/list_pressed_holo_dark.9.png"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/chat.xml"
line="27"
column="10"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/save_playlist.xml"
line="9"
column="6"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/share_details.xml"
line="30"
column="10"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/time_span_dialog.xml"
line="30"
column="10"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/update_playlist.xml"
line="18"
column="4"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/update_playlist.xml"
line="40"
column="4"/>
</issue>
<issue
id="ClickableViewAccessibility"
message="Custom view ``AutoRepeatButton`` has `setOnTouchListener` called on it but does not override `performClick`"
errorLine1=" this.setOnTouchListener(new OnTouchListener()"
errorLine2=" ^">
<location
file="src/main/java/org/moire/ultrasonic/view/AutoRepeatButton.java"
line="36"
column="3"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="10"
column="6"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="76"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="85"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="94"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="10"
column="6"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="97"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="106"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="115"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="10"
column="6"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="82"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="91"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="100"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="10"
column="6"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="83"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="92"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="101"
column="14"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageButton"
errorLine2=" ~~~~~~~~~~~">
<location
file="src/main/res/layout/chat.xml"
line="38"
column="10"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/chat_item.xml"
line="7"
column="6"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" &lt;ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/chat_item_reverse.xml"
line="64"
column="6"/>
</issue>
<issue
id="LabelFor"
message="Missing accessibility label: provide either a view with an `android:labelFor` that references this view or provide an `android:hint`"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/save_playlist.xml"
line="9"
column="6"/>
</issue>
<issue
id="LabelFor"
message="Missing accessibility label: provide either a view with an `android:labelFor` that references this view or provide an `android:hint`"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/share_details.xml"
line="30"
column="10"/>
</issue>
<issue
id="LabelFor"
message="Missing accessibility label: provide either a view with an `android:labelFor` that references this view or provide an `android:hint`"
errorLine1=" &lt;EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/time_span_dialog.xml"
line="30"
column="10"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Title&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Title&quot;"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="46"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Artist&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Artist&quot;"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x1.xml"
line="64"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Title&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Title&quot;"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="48"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Artist&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Artist&quot;"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="65"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Album&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Album&quot;"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x2.xml"
line="82"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Title&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Title&quot;"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="50"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Artist&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Artist&quot;"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x3.xml"
line="66"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Title&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Title&quot;"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="51"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;Artist&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;Artist&quot;"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/appwidget4x4.xml"
line="67"
column="17"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;0 dB&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;0 dB&quot;"
errorLine2=" ~~~~~~~~~~~~~">
<location
file="src/main/res/layout/equalizer_bar.xml"
line="19"
column="13"/>
</issue>
<issue
id="HardcodedText"
message="Hardcoded string &quot;http://&quot;, should use `@string` resource"
errorLine1=" a:text=&quot;http://&quot;"
errorLine2=" ~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/server_edit.xml"
line="43"
column="13"/>
</issue>
<issue
id="RelativeOverlap"
message="`@id/current_playing_duration` can overlap `@id/current_playing_position` if @string/util.no_time, @string/util.no_time grow due to localized text expansion"
errorLine1=" &lt;TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/player_slider.xml"
line="29"
column="10"/>
</issue>
</issues>