मैं एंड्रॉइड स्टूडियो में java.lang.SuppressWarnings
पैकेज का उपयोग कर रहा हूं।बाइट के साथ सुपर्रेस एंड्रॉइड अपठित फील्ड चेतावनी []
मैं इस एक छुटकारा नहीं मिल सकता है:
EI_EXPOSE_REP2: May expose internal representation by incorporating reference to mutable object (findbugs task)
यह एक सेटर विधि के साथ हो रहा है।
इस चेतावनी से छुटकारा पाने के तरीके पर कोई विचार? धन्यवाद!
public class PropertyDetailDocumentStorageModel implements Parcelable {
@SerializedName("picture")
private byte[] mPicture;
public void setmPicture(byte[] mPicture) { this.mPicture = mPicture; }
चेतावनी:
setmPicture(byte[]) may expose internal representation by storing an externally mutable object into PropertyDetailDocumentStorageModel.mPicture
नोट यह केवल क्षेत्र है जिसका प्रकार byte[]
है पर हो रहा है। उसी वर्ग में अन्य फ़ील्ड जो गेटर्स हैं, इस चेतावनी को फेंक नहीं रहे हैं।
क्या आप चेतावनी को दबाने की कोशिश कर रहे हैं, या कोड में समस्या का समाधान कर रहे हैं? यदि यह बाद वाला है, तो हमें आपका कोड देखना होगा। –
मैं या तो @Supress के साथ चेतावनी को रोकने का तरीका ढूंढना चाहता हूं ... या यदि कोई है तो कोड को बेहतर बनाने का दूसरा तरीका ढूंढना चाहते हैं? – estoke
धन्यवाद @ थॉमस, वास्तव में इसमें एक गेटर है: 'सार्वजनिक बाइट [] getm चित्र() {वापसी mPicture.clone(); } 'सेटटर के लिए बीन सम्मेलन को इंगित करने के लिए धन्यवाद। ('सार्वजनिक शून्य सेटपी (टी)') मैं इसे Arrays.copyOf() के साथ आज़मा दूंगा। और आखिरी बात जो आप "चेतावनी दबाने" का सुझाव देते हैं, जो वास्तव में मुझे मदद की ज़रूरत है। उस चेतावनी के लिए कीवर्ड क्या होगा? @SupressWarning ("...?)। धन्यवाद! – estoke