123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- <?xml version="1.0" encoding="UTF-8"?>
- <issues format="5" by="lint 4.1.3">
- <issue
- id="PrivateApi"
- severity="Warning"
- message="Accessing internal APIs via reflection is not supported and may not work on all devices or in the future"
- category="Correctness"
- priority="6"
- summary="Using Private APIs"
- explanation="Using reflection to access hidden/private Android APIs is not safe; it will often not work on devices from other vendors, and it may suddenly stop working (if the API is removed) or crash spectacularly (if the API behavior changes, since there are no guarantees for compatibility)."
- url="https://developer.android.com/preview/restrictions-non-sdk-interfaces"
- urls="https://developer.android.com/preview/restrictions-non-sdk-interfaces"
- errorLine1=" Class<?> c = Class.forName("android.os.SystemProperties");"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\EfunboxUtil.java"
- line="42"
- column="30"/>
- </issue>
- <issue
- id="PrivateApi"
- severity="Warning"
- message="Accessing internal APIs via reflection is not supported and may not work on all devices or in the future"
- category="Correctness"
- priority="6"
- summary="Using Private APIs"
- explanation="Using reflection to access hidden/private Android APIs is not safe; it will often not work on devices from other vendors, and it may suddenly stop working (if the API is removed) or crash spectacularly (if the API behavior changes, since there are no guarantees for compatibility)."
- url="https://developer.android.com/preview/restrictions-non-sdk-interfaces"
- urls="https://developer.android.com/preview/restrictions-non-sdk-interfaces"
- errorLine1=" val clazz = Class.forName("android.app.ActivityThread")"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\wxf1a06dafa3350688\PluginManager.kt"
- line="45"
- column="25"/>
- </issue>
- <issue
- id="GradleDependency"
- severity="Warning"
- message="A newer version of androidx.exifinterface:exifinterface than 1.1.0 is available: 1.2.0"
- category="Correctness"
- priority="4"
- summary="Obsolete Gradle Dependency"
- explanation="This detector looks for usages of libraries where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find."
- errorLine1=" implementation "androidx.exifinterface:exifinterface:1.1.0""
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\build.gradle"
- line="61"
- column="9"/>
- </issue>
- <issue
- id="GradleDependency"
- severity="Warning"
- message="A newer version of androidx.constraintlayout:constraintlayout than 1.1.3 is available: 2.0.4"
- category="Correctness"
- priority="4"
- summary="Obsolete Gradle Dependency"
- explanation="This detector looks for usages of libraries where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find."
- errorLine1=" api "androidx.constraintlayout:constraintlayout:1.1.3""
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\build.gradle"
- line="66"
- column="9"/>
- </issue>
- <issue
- id="GradleDependency"
- severity="Warning"
- message="A newer version of com.google.android.material:material than 1.0.0 is available: 1.4.0"
- category="Correctness"
- priority="4"
- summary="Obsolete Gradle Dependency"
- explanation="This detector looks for usages of libraries where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find."
- errorLine1=" api 'com.google.android.material:material:1.0.0'"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\build.gradle"
- line="68"
- column="9"/>
- </issue>
- <issue
- id="GradleDependency"
- severity="Warning"
- message="A newer version of com.umeng.umsdk:common than 9.6.3 is available: 9.6.7"
- category="Correctness"
- priority="4"
- summary="Obsolete Gradle Dependency"
- explanation="This detector looks for usages of libraries where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find."
- errorLine1=" implementation 'com.umeng.umsdk:common:9.6.3'// 必选"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\build.gradle"
- line="72"
- column="9"/>
- </issue>
- <issue
- id="GradleDependency"
- severity="Warning"
- message="A newer version of com.umeng.umsdk:asms than 1.8.0 is available: 1.8.2"
- category="Correctness"
- priority="4"
- summary="Obsolete Gradle Dependency"
- explanation="This detector looks for usages of libraries where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find."
- errorLine1=" implementation 'com.umeng.umsdk:asms:1.8.0'// 必选"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\build.gradle"
- line="73"
- column="9"/>
- </issue>
- <issue
- id="HardwareIds"
- severity="Warning"
- message="Using `getString` to get device identifiers is not recommended"
- category="Security"
- priority="6"
- summary="Hardware Id Usage"
- explanation="Using these device identifiers is not recommended other than for high value fraud prevention and advanced telephony use-cases. For advertising use-cases, use `AdvertisingIdClient$Info#getId` and for analytics, use `InstanceId#getId`."
- url="https://developer.android.com/training/articles/user-data-ids.html"
- urls="https://developer.android.com/training/articles/user-data-ids.html"
- errorLine1=" final String androidId = Settings.Secure.getString("
- errorLine2=" ^">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\DeviceUuidFactory.java"
- line="22"
- column="50"/>
- </issue>
- <issue
- id="HardwareIds"
- severity="Warning"
- message="Using `getDeviceId` to get device identifiers is not recommended"
- category="Security"
- priority="6"
- summary="Hardware Id Usage"
- explanation="Using these device identifiers is not recommended other than for high value fraud prevention and advanced telephony use-cases. For advertising use-cases, use `AdvertisingIdClient$Info#getId` and for analytics, use `InstanceId#getId`."
- url="https://developer.android.com/training/articles/user-data-ids.html"
- urls="https://developer.android.com/training/articles/user-data-ids.html"
- errorLine1=" @SuppressLint("MissingPermission") final String deviceId = ((TelephonyManager) context"
- errorLine2=" ^">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\DeviceUuidFactory.java"
- line="27"
- column="88"/>
- </issue>
- <issue
- id="HardwareIds"
- severity="Warning"
- message="Using `SERIAL` to get device identifiers is not recommended"
- category="Security"
- priority="6"
- summary="Hardware Id Usage"
- explanation="Using these device identifiers is not recommended other than for high value fraud prevention and advanced telephony use-cases. For advertising use-cases, use `AdvertisingIdClient$Info#getId` and for analytics, use `InstanceId#getId`."
- url="https://developer.android.com/training/articles/user-data-ids.html"
- urls="https://developer.android.com/training/articles/user-data-ids.html"
- errorLine1=" serial = Build.SERIAL;"
- errorLine2=" ~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\EfunboxUtil.java"
- line="40"
- column="32"/>
- </issue>
- <issue
- id="HardwareIds"
- severity="Warning"
- message="Using `ro.serialno` to get device identifiers is not recommended"
- category="Security"
- priority="6"
- summary="Hardware Id Usage"
- explanation="Using these device identifiers is not recommended other than for high value fraud prevention and advanced telephony use-cases. For advertising use-cases, use `AdvertisingIdClient$Info#getId` and for analytics, use `InstanceId#getId`."
- url="https://developer.android.com/training/articles/user-data-ids.html"
- urls="https://developer.android.com/training/articles/user-data-ids.html"
- errorLine1=" serial = (String) get.invoke(c, "ro.serialno");"
- errorLine2=" ~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\EfunboxUtil.java"
- line="44"
- column="49"/>
- </issue>
- <issue
- id="StaticFieldLeak"
- severity="Warning"
- message="Do not place Android context classes in static fields; this is a memory leak"
- category="Performance"
- priority="6"
- summary="Static Field Leaks"
- explanation="A static field will leak contexts.

Non-static inner classes have an implicit reference to their outer class. If that outer class is for example a `Fragment` or `Activity`, then this reference means that the long-running handler/loader/task will hold a reference to the activity which prevents it from getting garbage collected.

Similarly, direct field references to activities and fragments from these longer running instances can cause leaks.

ViewModel classes should never point to Views or non-application Contexts."
- errorLine1=" lateinit var mTopActivity: Activity"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="F:\Work_Space\Wechat_workSpace\reader_plugin\android\plugin\src\main\java\com\donut\plugin\util\BaseConsts.kt"
- line="10"
- column="9"/>
- </issue>
- </issues>
|