735 lines
57 KiB
Plaintext
735 lines
57 KiB
Plaintext
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/medication/MedicationDialog.java:351: Warning: Implicitly using the default locale is a common source of bugs: Use toLowerCase(Locale) instead. For strings meant to be internal use Locale.ROOT, otherwise Locale.getDefault(). [DefaultLocale]
|
|
String lowerQuery = query.toLowerCase();
|
|
~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/medication/MedicationDialog.java:353: Warning: Implicitly using the default locale is a common source of bugs: Use toLowerCase(Locale) instead. For strings meant to be internal use Locale.ROOT, otherwise Locale.getDefault(). [DefaultLocale]
|
|
if (p.nome != null && p.nome.toLowerCase().contains(lowerQuery)) {
|
|
~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleAppointmentFragment.java:82: Warning: Implicitly using the default locale is a common source of bugs: Use toLowerCase(Locale) instead. For strings meant to be internal use Locale.ROOT, otherwise Locale.getDefault(). [DefaultLocale]
|
|
String lowerReason = reason.toLowerCase();
|
|
~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleViewModel.java:80: Warning: Implicitly using the default locale is a common source of bugs: Use String.format(Locale, ...) instead [DefaultLocale]
|
|
String date = String.format("%02d/%02d/%04d", dayOfMonth, month + 1, year);
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleViewModel.java:188: Warning: Implicitly using the default locale is a common source of bugs: Use String.format(Locale, ...) instead [DefaultLocale]
|
|
String todayStr = String.format("%02d/%02d/%04d",
|
|
^
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleViewModel.java:202: Warning: Implicitly using the default locale is a common source of bugs: Use String.format(Locale, ...) instead [DefaultLocale]
|
|
addSlot(slots, String.format("%02d:00", hour), bookedTimes);
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleViewModel.java:206: Warning: Implicitly using the default locale is a common source of bugs: Use String.format(Locale, ...) instead [DefaultLocale]
|
|
addSlot(slots, String.format("%02d:30", hour), bookedTimes);
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "DefaultLocale":
|
|
Calling String#toLowerCase() or #toUpperCase() without specifying an
|
|
explicit locale is a common source of bugs. The reason for that is that
|
|
those methods will use the current locale on the user's device, and even
|
|
though the code appears to work correctly when you are developing the app,
|
|
it will fail in some locales. For example, in the Turkish locale, the
|
|
uppercase replacement for i is not I.
|
|
|
|
If you want the methods to just perform ASCII replacement, for example to
|
|
convert an enum name, call String#toUpperCase(Locale.ROOT) instead. If you
|
|
really want to use the current locale, call
|
|
String#toUpperCase(Locale.getDefault()) instead.
|
|
|
|
https://developer.android.com/reference/java/util/Locale.html#default_locale
|
|
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:13: Warning: 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. [OldTargetApi]
|
|
targetSdk 35
|
|
~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "OldTargetApi":
|
|
When your application or sdk runs on a version of Android that is more
|
|
recent than your targetSdk specifies that it has been tested with, various
|
|
compatibility modes kick in. This ensures that your application continues
|
|
to work, but it may look out of place. For example, if the targetSdk is
|
|
less than 14, your app may get an option button in the UI.
|
|
|
|
To fix this issue, set the targetSdk to the highest available value. Then
|
|
test your app to make sure everything works correctly. You may want to
|
|
consult the compatibility notes to see what changes apply to each version
|
|
you are adding support for:
|
|
https://developer.android.com/reference/android/os/Build.VERSION_CODES.html
|
|
as well as follow this guide:
|
|
https://developer.android.com/distribute/best-practices/develop/target-sdk.
|
|
html
|
|
|
|
https://developer.android.com/distribute/best-practices/develop/target-sdk.html
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_main.xml:9: Warning: Replace the <fragment> tag with FragmentContainerView. [FragmentTagUsage from androidx.fragment]
|
|
<fragment
|
|
~~~~~~~~
|
|
|
|
Explanation for issues of type "FragmentTagUsage":
|
|
FragmentContainerView replaces the <fragment> tag as the preferred
|
|
way of adding fragments via XML. Unlike the <fragment> tag,
|
|
FragmentContainerView uses a normal FragmentTransaction
|
|
under the hood to add the initial fragment, allowing
|
|
further FragmentTransaction operations on the FragmentContainerView
|
|
and providing a consistent timing for lifecycle events.
|
|
|
|
https://developer.android.com/reference/androidx/fragment/app/FragmentContainerView.html
|
|
|
|
Vendor: Android Open Source Project
|
|
Identifier: androidx.fragment
|
|
Feedback: https://issuetracker.google.com/issues/new?component=460964
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/AndroidManifest.xml:53: Warning: Consider splitting data tag into multiple tags with individual attributes to avoid confusion [IntentFilterUniqueDataAttributes]
|
|
<data
|
|
^
|
|
/Users/230405/Desktop/papcuida/app/src/main/AndroidManifest.xml:56: Warning: Consider splitting data tag into multiple tags with individual attributes to avoid confusion [IntentFilterUniqueDataAttributes]
|
|
<data
|
|
^
|
|
|
|
Explanation for issues of type "IntentFilterUniqueDataAttributes":
|
|
<intent-filter> <data> tags should only declare a single unique attribute
|
|
(i.e. scheme OR host, but not both). This better matches the runtime
|
|
behavior of intent filters, as they combine all of the declared data
|
|
attributes into a single matcher which is allowed to handle any combination
|
|
across attribute types.
|
|
|
|
For example, the following two <intent-filter> declarations are the same:
|
|
<intent-filter>
|
|
<data android:scheme="http" android:host="example.com" />
|
|
<data android:scheme="https" android:host="example.org" />
|
|
</intent-filter>
|
|
|
|
<intent-filter>
|
|
<data android:scheme="http"/>
|
|
<data android:scheme="https"/>
|
|
<data android:host="example.com" />
|
|
<data android:host="example.org" />
|
|
</intent-filter>
|
|
|
|
They both handle all of the following:
|
|
* http://example.com
|
|
* https://example.com
|
|
* http://example.org
|
|
* https://example.org
|
|
|
|
The second one better communicates the combining behavior and is clearer to
|
|
an external reader that one should not rely on the scheme/host being self
|
|
contained. It is not obvious in the first that http://example.org is also
|
|
matched, which can lead to confusion (or incorrect behavior) with a more
|
|
complex set of schemes/hosts.
|
|
|
|
Note that this does not apply to host + port, as those must be declared in
|
|
the same <data> tag and are only associated with each other.
|
|
|
|
https://developer.android.com/guide/components/intents-filters
|
|
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:8: Warning: A newer version of compileSdk than 35 is available: 37 [GradleDependency]
|
|
compileSdk 35
|
|
~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:39: Warning: A newer version of androidx.appcompat:appcompat than 1.6.1 is available: 1.7.1 [GradleDependency]
|
|
implementation 'androidx.appcompat:appcompat:1.6.1'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:41: Warning: A newer version of com.google.android.material:material than 1.11.0 is available: 1.13.0 [GradleDependency]
|
|
implementation 'com.google.android.material:material:1.11.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:42: Warning: A newer version of androidx.constraintlayout:constraintlayout than 2.1.4 is available: 2.2.1 [GradleDependency]
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:43: Warning: A newer version of androidx.lifecycle:lifecycle-livedata-ktx than 2.7.0 is available: 2.10.0 [GradleDependency]
|
|
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.7.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:44: Warning: A newer version of androidx.lifecycle:lifecycle-viewmodel-ktx than 2.7.0 is available: 2.10.0 [GradleDependency]
|
|
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:45: Warning: A newer version of androidx.navigation:navigation-fragment than 2.7.7 is available: 2.9.7 [GradleDependency]
|
|
implementation 'androidx.navigation:navigation-fragment:2.7.7'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:46: Warning: A newer version of androidx.navigation:navigation-ui than 2.7.7 is available: 2.9.7 [GradleDependency]
|
|
implementation 'androidx.navigation:navigation-ui:2.7.7'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:50: Warning: A newer version of androidx.credentials:credentials than 1.5.0 is available: 1.6.0 [GradleDependency]
|
|
implementation 'androidx.credentials:credentials:1.5.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:51: Warning: A newer version of androidx.credentials:credentials-play-services-auth than 1.5.0 is available: 1.6.0 [GradleDependency]
|
|
implementation 'androidx.credentials:credentials-play-services-auth:1.5.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:53: Warning: A newer version of com.google.android.libraries.identity.googleid:googleid than 1.1.1 is available: 1.2.0 [GradleDependency]
|
|
implementation 'com.google.android.libraries.identity.googleid:googleid:1.1.1'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:57: Warning: A newer version of androidx.test.ext:junit than 1.1.5 is available: 1.3.0 [GradleDependency]
|
|
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:58: Warning: A newer version of androidx.test.espresso:espresso-core than 3.5.1 is available: 3.7.0 [GradleDependency]
|
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:61: Warning: A newer version of com.google.android.gms:play-services-location than 21.0.1 is available: 21.3.0 [GradleDependency]
|
|
implementation 'com.google.android.gms:play-services-location:21.0.1'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:69: Warning: A newer version of com.google.firebase:firebase-bom than 32.7.2 is available: 34.12.0 [GradleDependency]
|
|
implementation platform('com.google.firebase:firebase-bom:32.7.2')
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "GradleDependency":
|
|
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.
|
|
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:64: Warning: A newer version of com.squareup.retrofit2:retrofit than 2.9.0 is available: 3.0.0 [NewerVersionAvailable]
|
|
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:65: Warning: A newer version of com.squareup.retrofit2:converter-gson than 2.9.0 is available: 3.0.0 [NewerVersionAvailable]
|
|
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/build.gradle:66: Warning: A newer version of com.squareup.okhttp3:okhttp than 4.10.0 is available: 5.3.2 [NewerVersionAvailable]
|
|
implementation 'com.squareup.okhttp3:okhttp:4.10.0'
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "NewerVersionAvailable":
|
|
This detector checks with a central repository to see if there are newer
|
|
versions available for the dependencies used by this project. This is
|
|
similar to the GradleDependency check, which checks for newer versions
|
|
available in the Android SDK tools and libraries, but this works with any
|
|
MavenCentral dependency, and connects to the library every time, which
|
|
makes it more flexible but also much slower.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleAppointmentFragment.java:140: Warning: Use of this function is discouraged because resource reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resources by identifier (e.g. R.foo.bar) than by name (e.g. getIdentifier("bar", "foo", null)). [DiscouragedApi]
|
|
int yearSpinnerId = android.content.res.Resources.getSystem().getIdentifier("year", "id", "android");
|
|
~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleAppointmentFragment.java:149: Warning: Use of this function is discouraged because resource reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resources by identifier (e.g. R.foo.bar) than by name (e.g. getIdentifier("bar", "foo", null)). [DiscouragedApi]
|
|
int daySpinnerId = android.content.res.Resources.getSystem().getIdentifier("day", "id", "android");
|
|
~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/ScheduleAppointmentFragment.java:150: Warning: Use of this function is discouraged because resource reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resources by identifier (e.g. R.foo.bar) than by name (e.g. getIdentifier("bar", "foo", null)). [DiscouragedApi]
|
|
int monthSpinnerId = android.content.res.Resources.getSystem().getIdentifier("month", "id", "android");
|
|
~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "DiscouragedApi":
|
|
Discouraged APIs are allowed and are not deprecated, but they may be unfit
|
|
for common use (e.g. due to slow performance or subtle behavior).
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/appointments/AppointmentAdapter.java:20: Warning: It will always be more efficient to use more specific change events if you can. Rely on notifyDataSetChanged as a last resort. [NotifyDataSetChanged]
|
|
notifyDataSetChanged();
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/medication/MedicationAdapter.java:32: Warning: It will always be more efficient to use more specific change events if you can. Rely on notifyDataSetChanged as a last resort. [NotifyDataSetChanged]
|
|
notifyDataSetChanged();
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/medication/MedicationDialog.java:347: Warning: It will always be more efficient to use more specific change events if you can. Rely on notifyDataSetChanged as a last resort. [NotifyDataSetChanged]
|
|
recyclerAdapter.notifyDataSetChanged();
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/medication/MedicationDialog.java:358: Warning: It will always be more efficient to use more specific change events if you can. Rely on notifyDataSetChanged as a last resort. [NotifyDataSetChanged]
|
|
recyclerAdapter.notifyDataSetChanged();
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/schedule/TimeSlotAdapter.java:28: Warning: It will always be more efficient to use more specific change events if you can. Rely on notifyDataSetChanged as a last resort. [NotifyDataSetChanged]
|
|
notifyDataSetChanged();
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "NotifyDataSetChanged":
|
|
The RecyclerView adapter's onNotifyDataSetChanged method does not specify
|
|
what about the data set has changed, forcing any observers to assume that
|
|
all existing items and structure may no longer be valid. `LayoutManager`s
|
|
will be forced to fully rebind and relayout all visible views.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/utils/AlarmScheduler.java:36: Warning: Unnecessary; Build.VERSION.SDK_INT >= Build.VERSION_CODES.M is always true here (SDK_INT ≥ 24 and < 31) [ObsoleteSdkInt]
|
|
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "ObsoleteSdkInt":
|
|
This check flags version checks that are not necessary, because the
|
|
minSdkVersion (or surrounding known API level) is already at least as high
|
|
as the version checked for.
|
|
|
|
Similarly, it also looks for resources in -vNN folders, such as values-v14
|
|
where the version qualifier is less than or equal to the minSdkVersion,
|
|
where the contents should be merged into the best folder.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_register.xml:59: Warning: Set android:baselineAligned="false" on this element for better performance [DisableBaselineAlignment]
|
|
<LinearLayout
|
|
~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "DisableBaselineAlignment":
|
|
When a LinearLayout is used to distribute the space proportionally between
|
|
nested layouts, the baseline alignment property should be turned off to
|
|
make the layout computation faster.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_forgot_password.xml:8: Warning: Possible overdraw: Root element paints background @color/background_color with a theme that also paints a background (inferred theme is @style/Theme.Cuida) [Overdraw]
|
|
android:background="@color/background_color">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_login.xml:7: Warning: Possible overdraw: Root element paints background @color/background_color with a theme that also paints a background (inferred theme is @style/Theme.Cuida) [Overdraw]
|
|
android:background="@color/background_color">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_register.xml:7: Warning: Possible overdraw: Root element paints background @color/background_color with a theme that also paints a background (inferred theme is @style/Theme.Cuida) [Overdraw]
|
|
android:background="@color/background_color">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:8: Warning: Possible overdraw: Root element paints background @color/background_color with a theme that also paints a background (inferred theme is @style/Theme.Cuida) [Overdraw]
|
|
android:background="@color/background_color">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:9: Warning: Possible overdraw: Root element paints background @color/background_color with a theme that also paints a background (inferred theme is @style/Theme.Cuida) [Overdraw]
|
|
android:background="@color/background_color">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "Overdraw":
|
|
If you set a background drawable on a root view, then you should use a
|
|
custom theme where the theme background is null. Otherwise, the theme
|
|
background will be painted first, only to have your custom background
|
|
completely cover it; this is called "overdraw".
|
|
|
|
NOTE: This detector relies on figuring out which layouts are associated
|
|
with which activities based on scanning the Java code, and it's currently
|
|
doing that using an inexact pattern matching algorithm. Therefore, it can
|
|
incorrectly conclude which activity the layout is associated with and then
|
|
wrongly complain that a background-theme is hidden.
|
|
|
|
If you want your custom background on multiple pages, then you should
|
|
consider making a custom theme with your custom background and just using
|
|
that theme instead of a root element background.
|
|
|
|
Of course it's possible that your custom drawable is translucent and you
|
|
want it to be mixed with the background. However, you will get better
|
|
performance if you pre-mix the background with your drawable and use that
|
|
resulting image or color as a custom theme background instead.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/drawable/bg_search_results.xml:2: Warning: The resource R.drawable.bg_search_results appears to be unused [UnusedResources]
|
|
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
|
^
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/values/colors.xml:5: Warning: The resource R.color.primary_light_color appears to be unused [UnusedResources]
|
|
<color name="primary_light_color">#E3F2FD</color>
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/values/colors.xml:18: Warning: The resource R.color.purple_200 appears to be unused [UnusedResources]
|
|
<color name="purple_200">#90CAF9</color>
|
|
~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/values/colors.xml:19: Warning: The resource R.color.purple_500 appears to be unused [UnusedResources]
|
|
<color name="purple_500">#0066CC</color>
|
|
~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/values/colors.xml:20: Warning: The resource R.color.purple_700 appears to be unused [UnusedResources]
|
|
<color name="purple_700">#004C99</color>
|
|
~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/values/colors.xml:21: Warning: The resource R.color.teal_200 appears to be unused [UnusedResources]
|
|
<color name="teal_200">#69F0AE</color>
|
|
~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/drawable/ic_launcher.xml:1: Warning: The resource R.drawable.ic_launcher appears to be unused [UnusedResources]
|
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
|
^
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/drawable/ic_launcher_round.xml:1: Warning: The resource R.drawable.ic_launcher_round appears to be unused [UnusedResources]
|
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
|
^
|
|
|
|
Explanation for issues of type "UnusedResources":
|
|
Unused resources make applications larger and slow down builds.
|
|
|
|
|
|
The unused resource check can ignore tests. If you want to include
|
|
resources that are only referenced from tests, consider packaging them in a
|
|
test source set instead.
|
|
|
|
You can include test sources in the unused resource check by setting the
|
|
system property lint.unused-resources.include-tests=true, and to exclude
|
|
them (usually for performance reasons), use
|
|
lint.unused-resources.exclude-tests=true.
|
|
|
|
Available options:
|
|
|
|
**skip-libraries** (default is true):
|
|
Whether the unused resource check should skip reporting unused resources in libraries.
|
|
|
|
Many libraries will declare resources that are part of the library surface; other modules depending on the library will also reference the resources. To avoid reporting all these resources as unused (in the context of a library), the unused resource check normally skips reporting unused resources in libraries. Instead, run the unused resource check on the consuming app module (along with `checkDependencies=true`).
|
|
|
|
However, there are cases where you want to check that all the resources declared in a library are used; in that case, you can disable the skip option.
|
|
|
|
To configure this option, use a `lint.xml` file with an <option> like this:
|
|
|
|
```xml
|
|
<lint>
|
|
<issue id="UnusedResources">
|
|
<option name="skip-libraries" value="true" />
|
|
</issue>
|
|
</lint>
|
|
```
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_appointments.xml:6: Warning: This LinearLayout layout or its FrameLayout parent is unnecessary [UselessParent]
|
|
<LinearLayout
|
|
~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "UselessParent":
|
|
A layout with children that has no siblings, is not a scrollview or a root
|
|
layout, and does not have a background, can be removed and have its
|
|
children moved directly into the parent for a flatter and more efficient
|
|
layout hierarchy.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/drawable-v26/ic_launcher_final.xml:2: Warning: The application adaptive icon is missing a monochrome tag [MonochromeLauncherIcon]
|
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
^
|
|
|
|
Explanation for issues of type "MonochromeLauncherIcon":
|
|
The system may use the coloring of the user's chosen wallpaper and theme to
|
|
tint app icons. Providing a <monochrome> layer (which will be used for
|
|
tinting) for every adaptive icon is strongly recommended, otherwise Android
|
|
16 QPR 2 and above will simply tint the color version of the icon, which
|
|
may look unusual. Devices running earlier Android versions will (with no
|
|
monochrome layer) show the untinted color icon for your app, which will
|
|
look inconsistent.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/drawable/ic_logo.png: Warning: Found bitmap drawable res/drawable/ic_logo.png in densityless folder [IconLocation]
|
|
|
|
Explanation for issues of type "IconLocation":
|
|
The res/drawable folder is intended for density-independent graphics such
|
|
as shapes defined in XML. For bitmaps, move it to drawable-mdpi and
|
|
consider providing higher and lower resolution versions in drawable-ldpi,
|
|
drawable-hdpi and drawable-xhdpi. If the icon really is density independent
|
|
(for example a solid color) you can place it in drawable-nodpi.
|
|
|
|
https://developer.android.com/guide/practices/screens_support.html
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_forgot_password.xml:10: Warning: Missing contentDescription attribute on image [ContentDescription]
|
|
<ImageView
|
|
~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:10: Warning: Missing contentDescription attribute on image [ContentDescription]
|
|
<ImageView
|
|
~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_medication.xml:20: Warning: Missing contentDescription attribute on image [ContentDescription]
|
|
<ImageView
|
|
~~~~~~~~~
|
|
|
|
Explanation for issues of type "ContentDescription":
|
|
Non-textual widgets like ImageViews and ImageButtons should use the
|
|
contentDescription attribute to specify a textual description of the widget
|
|
such that screen readers and other accessibility tools can adequately
|
|
describe the user interface.
|
|
|
|
Note that elements in application screens that are purely decorative and do
|
|
not provide any content or enable a user action should not have
|
|
accessibility content descriptions. In this case, set their descriptions to
|
|
@null. If your app's minSdkVersion is 16 or higher, you can instead set
|
|
these graphical elements' android:importantForAccessibility attributes to
|
|
no.
|
|
|
|
Note that for text fields, you should not set both the hint and the
|
|
contentDescription attributes since the hint will never be shown. Just set
|
|
the hint.
|
|
|
|
https://developer.android.com/guide/topics/ui/accessibility/apps#special-cases
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_register.xml:105: Warning: Missing accessibility label: provide either a view with an android:labelFor that references this view or provide an android:hint [LabelFor]
|
|
<AutoCompleteTextView
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:64: Warning: Missing accessibility label: provide either a view with an android:labelFor that references this view or provide an android:hint [LabelFor]
|
|
<AutoCompleteTextView
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "LabelFor":
|
|
Editable text fields should provide an android:hint or, provided your
|
|
minSdkVersion is at least 17, they may be referenced by a view with a
|
|
android:labelFor attribute.
|
|
|
|
When using android:labelFor, be sure to provide an android:text or an
|
|
android:contentDescription.
|
|
|
|
If your view is labeled but by a label in a different layout which includes
|
|
this one, just suppress this warning from lint.
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/appointments/AppointmentAdapter.java:36: Warning: Do not concatenate text displayed with setText. Use resource string with placeholders. [SetTextI18n]
|
|
holder.textReason.setText("Motivo: " + (appointment.reason != null ? appointment.reason : "--"));
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/appointments/AppointmentAdapter.java:36: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
holder.textReason.setText("Motivo: " + (appointment.reason != null ? appointment.reason : "--"));
|
|
~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:44: Warning: Do not concatenate text displayed with setText. Use resource string with placeholders. [SetTextI18n]
|
|
binding.textGreeting.setText("Olá, " + firstName + "!");
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:44: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textGreeting.setText("Olá, " + firstName + "!");
|
|
~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:46: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textGreeting.setText("Olá, Utilizador!");
|
|
~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:62: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textGreeting.setText("Olá, Utilizador!");
|
|
~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:65: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textGreeting.setText("Olá, Utilizador!");
|
|
~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:72: Warning: Do not concatenate text displayed with setText. Use resource string with placeholders. [SetTextI18n]
|
|
binding.nextMedName.setText(medication.name + " (" + medication.dosage + ")");
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:73: Warning: Do not concatenate text displayed with setText. Use resource string with placeholders. [SetTextI18n]
|
|
binding.nextMedTime.setText("Hoje, " + medication.time);
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:73: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.nextMedTime.setText("Hoje, " + medication.time);
|
|
~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/home/HomeFragment.java:75: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.nextMedName.setText("Sem medicação");
|
|
~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/LoginActivity.java:116: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.loginButton.setText("A entrar...");
|
|
~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/LoginActivity.java:143: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.loginButton.setText("A entrar...");
|
|
~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/RegisterActivity.java:57: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.registerButton.setText("A registar...");
|
|
~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/RegisterActivity.java:80: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.registerButton.setText("Registar");
|
|
~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/RegisterActivity.java:85: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.registerButton.setText("Registar");
|
|
~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/RegisterActivity.java:114: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.registerButton.setText("Registar");
|
|
~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/ResetPasswordActivity.java:62: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.saveNewPasswordButton.setText("A guardar...");
|
|
~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/auth/ResetPasswordActivity.java:75: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.saveNewPasswordButton.setText("Guardar Palavra-passe");
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/sns24/Sns24Fragment.java:68: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textAiResult.setText("A analisar sintomas...");
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/sns24/Sns24Fragment.java:104: Warning: Do not concatenate text displayed with setText. Use resource string with placeholders. [SetTextI18n]
|
|
binding.textAiResult.setText("Erro na ligação: " + t.getMessage());
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/java/com/example/cuida/ui/sns24/Sns24Fragment.java:104: Warning: String literal in setText can not be translated. Use Android resources instead. [SetTextI18n]
|
|
binding.textAiResult.setText("Erro na ligação: " + t.getMessage());
|
|
~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "SetTextI18n":
|
|
When calling TextView#setText
|
|
* Never call Number#toString() to format numbers; it will not handle
|
|
fraction separators and locale-specific digits properly. Consider using
|
|
String#format with proper format specifications (%d or %f) instead.
|
|
* Do not pass a string literal (e.g. "Hello") to display text. Hardcoded
|
|
text can not be properly translated to other languages. Consider using
|
|
Android resource strings instead.
|
|
* Do not build messages by concatenating text chunks. Such messages can not
|
|
be properly translated.
|
|
|
|
https://developer.android.com/guide/topics/resources/localization.html
|
|
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_forgot_password.xml:29: Warning: Hardcoded string "Insira o seu email para recuperar a palavra-passe.", should use @string resource [HardcodedText]
|
|
android:text="Insira o seu email para recuperar a palavra-passe."
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_forgot_password.xml:51: Warning: Hardcoded string "Recuperar Palavra-passe", should use @string resource [HardcodedText]
|
|
android:text="Recuperar Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_forgot_password.xml:59: Warning: Hardcoded string "Voltar ao Login", should use @string resource [HardcodedText]
|
|
android:text="Voltar ao Login"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_login.xml:78: Warning: Hardcoded string "Lembrar-me", should use @string resource [HardcodedText]
|
|
android:text="Lembrar-me"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_login.xml:96: Warning: Hardcoded string "Login com Biometria", should use @string resource [HardcodedText]
|
|
android:text="Login com Biometria"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_register.xml:92: Warning: Hardcoded string "Nº Utente", should use @string resource [HardcodedText]
|
|
android:hint="Nº Utente"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_register.xml:103: Warning: Hardcoded string "Sexo", should use @string resource [HardcodedText]
|
|
android:hint="Sexo">
|
|
~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:20: Warning: Hardcoded string "Nova Palavra-passe", should use @string resource [HardcodedText]
|
|
android:text="Nova Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:29: Warning: Hardcoded string "Insira e confirme a sua nova palavra-passe.", should use @string resource [HardcodedText]
|
|
android:text="Insira e confirme a sua nova palavra-passe."
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:43: Warning: Hardcoded string "Nova palavra-passe", should use @string resource [HardcodedText]
|
|
android:hint="Nova palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:56: Warning: Hardcoded string "Confirmar palavra-passe", should use @string resource [HardcodedText]
|
|
android:hint="Confirmar palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/activity_reset_password.xml:64: Warning: Hardcoded string "Guardar Palavra-passe", should use @string resource [HardcodedText]
|
|
android:text="Guardar Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:13: Warning: Hardcoded string "Nome do Medicamento", should use @string resource [HardcodedText]
|
|
android:hint="Nome do Medicamento"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:42: Warning: Hardcoded string "Horários", should use @string resource [HardcodedText]
|
|
android:text="Horários"
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:54: Warning: Hardcoded string "Adicionar", should use @string resource [HardcodedText]
|
|
android:text="Adicionar"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:68: Warning: Hardcoded string "Via de Administração", should use @string resource [HardcodedText]
|
|
android:text="Via de Administração"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:85: Warning: Hardcoded string "Via Oral (Pela boca)", should use @string resource [HardcodedText]
|
|
android:text="Via Oral (Pela boca)" />
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:91: Warning: Hardcoded string "Via Tópica (Na pele)", should use @string resource [HardcodedText]
|
|
android:text="Via Tópica (Na pele)" />
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:97: Warning: Hardcoded string "Via Inalatória (Pela nariz/boca)", should use @string resource [HardcodedText]
|
|
android:text="Via Inalatória (Pela nariz/boca)" />
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_add_medication.xml:104: Warning: Hardcoded string "Notas (Opcional)", should use @string resource [HardcodedText]
|
|
android:hint="Notas (Opcional)"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_change_password.xml:11: Warning: Hardcoded string "Alterar Palavra-passe", should use @string resource [HardcodedText]
|
|
android:text="Alterar Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_change_password.xml:26: Warning: Hardcoded string "Nova Palavra-passe", should use @string resource [HardcodedText]
|
|
android:hint="Nova Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_change_password.xml:41: Warning: Hardcoded string "Cancelar", should use @string resource [HardcodedText]
|
|
android:text="Cancelar"
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_change_password.xml:48: Warning: Hardcoded string "Salvar", should use @string resource [HardcodedText]
|
|
android:text="Salvar" />
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:31: Warning: Hardcoded string "Mudar Foto", should use @string resource [HardcodedText]
|
|
android:text="Mudar Foto"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:37: Warning: Hardcoded string "Editar Dados", should use @string resource [HardcodedText]
|
|
android:text="Editar Dados"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:52: Warning: Hardcoded string "Nome", should use @string resource [HardcodedText]
|
|
android:hint="Nome"
|
|
~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:65: Warning: Hardcoded string "Idade", should use @string resource [HardcodedText]
|
|
android:hint="Idade"
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:79: Warning: Hardcoded string "Nº Utente", should use @string resource [HardcodedText]
|
|
android:hint="Nº Utente"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:93: Warning: Hardcoded string "Email", should use @string resource [HardcodedText]
|
|
android:hint="Email"
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:103: Warning: Hardcoded string "Alterar Palavra-passe", should use @string resource [HardcodedText]
|
|
android:text="Alterar Palavra-passe"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:117: Warning: Hardcoded string "Cancelar", should use @string resource [HardcodedText]
|
|
android:text="Cancelar"
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/dialog_edit_profile.xml:124: Warning: Hardcoded string "Salvar", should use @string resource [HardcodedText]
|
|
android:text="Salvar" />
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_appointments.xml:25: Warning: Hardcoded string "Futuras", should use @string resource [HardcodedText]
|
|
android:text="Futuras"
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_appointments.xml:38: Warning: Hardcoded string "Passadas", should use @string resource [HardcodedText]
|
|
android:text="Passadas"
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_home.xml:23: Warning: Hardcoded string "Olá, utilizador!", should use @string resource [HardcodedText]
|
|
android:text="Olá, utilizador!"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_home.xml:52: Warning: Hardcoded string "Próxima Medicação", should use @string resource [HardcodedText]
|
|
android:text="Próxima Medicação"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_home.xml:61: Warning: Hardcoded string "Paracetamol 500mg", should use @string resource [HardcodedText]
|
|
android:text="Paracetamol 500mg"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_home.xml:69: Warning: Hardcoded string "Hoje, 14:00", should use @string resource [HardcodedText]
|
|
android:text="Hoje, 14:00"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_home.xml:80: Warning: Hardcoded string "Marcar Consulta", should use @string resource [HardcodedText]
|
|
android:text="Marcar Consulta"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_medication.xml:34: Warning: Hardcoded string "Ainda não tem medicamentos guardados.", should use @string resource [HardcodedText]
|
|
android:text="Ainda não tem medicamentos guardados."
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_medication.xml:52: Warning: Hardcoded string "Adicionar Medicamento", should use @string resource [HardcodedText]
|
|
android:contentDescription="Adicionar Medicamento"/>
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:39: Warning: Hardcoded string "Nome do Utilizador", should use @string resource [HardcodedText]
|
|
android:text="Nome do Utilizador"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:49: Warning: Hardcoded string "email@exemplo.com", should use @string resource [HardcodedText]
|
|
android:text="email@exemplo.com"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:70: Warning: Hardcoded string "Idade: ", should use @string resource [HardcodedText]
|
|
android:text="Idade: "
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:78: Warning: Hardcoded string "--", should use @string resource [HardcodedText]
|
|
android:text="--"
|
|
~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:93: Warning: Hardcoded string "Nº Utente: ", should use @string resource [HardcodedText]
|
|
android:text="Nº Utente: "
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:101: Warning: Hardcoded string "--", should use @string resource [HardcodedText]
|
|
android:text="--"
|
|
~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:114: Warning: Hardcoded string "Editar Dados", should use @string resource [HardcodedText]
|
|
android:text="Editar Dados"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_profile.xml:125: Warning: Hardcoded string "Terminar Sessão", should use @string resource [HardcodedText]
|
|
android:text="Terminar Sessão"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:11: Warning: Hardcoded string "Agendar Consulta", should use @string resource [HardcodedText]
|
|
android:text="Agendar Consulta"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:20: Warning: Hardcoded string "Selecionar Data", should use @string resource [HardcodedText]
|
|
android:text="Selecionar Data"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:37: Warning: Hardcoded string "Selecionar Horário", should use @string resource [HardcodedText]
|
|
android:text="Selecionar Horário"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:52: Warning: Hardcoded string "Selecionar Médico/Especialidade", should use @string resource [HardcodedText]
|
|
android:text="Selecionar Médico/Especialidade"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:62: Warning: Hardcoded string "Escolha o médico", should use @string resource [HardcodedText]
|
|
android:hint="Escolha o médico">
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:81: Warning: Hardcoded string "Motivo da Consulta", should use @string resource [HardcodedText]
|
|
android:hint="Motivo da Consulta"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_schedule_appointment.xml:91: Warning: Hardcoded string "Confirmar Agendamento", should use @string resource [HardcodedText]
|
|
android:text="Confirmar Agendamento"/>
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_sns24.xml:23: Warning: Hardcoded string "Ligar SNS 24 (808 24 24 24)", should use @string resource [HardcodedText]
|
|
android:text="Ligar SNS 24 (808 24 24 24)"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_sns24.xml:39: Warning: Hardcoded string "Triagem com Inteligência Artificial", should use @string resource [HardcodedText]
|
|
android:text="Triagem com Inteligência Artificial"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_sns24.xml:48: Warning: Hardcoded string "Descreva o que está a sentir...", should use @string resource [HardcodedText]
|
|
android:hint="Descreva o que está a sentir..."
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_sns24.xml:65: Warning: Hardcoded string "Analisar Sintomas", should use @string resource [HardcodedText]
|
|
android:text="Analisar Sintomas"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/fragment_sns24.xml:85: Warning: Hardcoded string "Hospital mais próximo", should use @string resource [HardcodedText]
|
|
android:text="Hospital mais próximo"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_appointment.xml:23: Warning: Hardcoded string "Tipo de Consulta", should use @string resource [HardcodedText]
|
|
android:text="Tipo de Consulta"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_appointment.xml:38: Warning: Hardcoded string "dd/MM/yyyy", should use @string resource [HardcodedText]
|
|
android:text="dd/MM/yyyy"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_appointment.xml:45: Warning: Hardcoded string "HH:mm", should use @string resource [HardcodedText]
|
|
android:text="HH:mm"
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_appointment.xml:53: Warning: Hardcoded string "Motivo: --", should use @string resource [HardcodedText]
|
|
android:text="Motivo: --"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_medication.xml:37: Warning: Hardcoded string "Nome Medicamento", should use @string resource [HardcodedText]
|
|
android:text="Nome Medicamento"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_medication.xml:46: Warning: Hardcoded string "Dosagem", should use @string resource [HardcodedText]
|
|
android:text="Dosagem"
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_medication.xml:53: Warning: Hardcoded string "Observações", should use @string resource [HardcodedText]
|
|
android:text="Observações"
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_medication.xml:62: Warning: Hardcoded string "HH:mm", should use @string resource [HardcodedText]
|
|
android:text="HH:mm"
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
/Users/230405/Desktop/papcuida/app/src/main/res/layout/item_time_slot.xml:6: Warning: Hardcoded string "09:00", should use @string resource [HardcodedText]
|
|
android:text="09:00"
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Explanation for issues of type "HardcodedText":
|
|
Hardcoding text attributes directly in layout files is bad for several
|
|
reasons:
|
|
|
|
* When creating configuration variations (for example for landscape or
|
|
portrait) you have to repeat the actual text (and keep it up to date when
|
|
making changes)
|
|
|
|
* The application cannot be translated to other languages by just adding
|
|
new translations for existing string resources.
|
|
|
|
There are quickfixes to automatically extract this hardcoded string into a
|
|
resource lookup.
|
|
|
|
0 errors, 153 warnings
|