Ich verwende das java.lang.SuppressWarnings
Paket in Android Studio.Unterdrücken Android Ungelesene Feld Warnung mit Byte []
EI_EXPOSE_REP2: May expose internal representation by incorporating reference to mutable object (findbugs task)
mit einer Set-Methode Es geschieht:
Ich kann nicht von diesem befreien.
Irgendwelche Ideen, wie man diese Warnung loswerden kann? Danke!
public class PropertyDetailDocumentStorageModel implements Parcelable {
@SerializedName("picture")
private byte[] mPicture;
public void setmPicture(byte[] mPicture) { this.mPicture = mPicture; }
Warnung:
setmPicture(byte[]) may expose internal representation by storing an externally mutable object into PropertyDetailDocumentStorageModel.mPicture
Hinweis dies auf dem einzigen Feldtyp, das geschieht ist byte[]
. Andere Felder in der gleichen Klasse, die Getter haben, geben diese Warnung nicht aus.
Versuchen Sie, die Warnung zu unterdrücken oder das Problem im Code zu lösen? Wenn es Letzteres ist, müssten wir Ihren Code sehen. –
Ich möchte entweder einen Weg finden, die Warnung mit einem @Supress zu stoppen ... oder einen anderen Weg finden, den Code zu verbessern, wenn es einen gibt? – estoke
Danke @Thomas, eigentlich hat es einen Getter: 'public byte [] getmPicture() {return mPicture.clone(); } Danke, dass du mir die Bean Convention für Setter gezeigt hast. ('public void setP (T)') Ich werde es mit Arrays.copyOf() versuchen. Und das letzte, was Sie vorschlagen, "die Warnung zu unterdrücken", für die ich Hilfe brauche. Was wäre das Schlüsselwort für diese Warnung? @SupressWarning ("...?). Danke! – estoke