Setelah meningkatkan ke appcompat, 25.1.0
saya mulai mendapatkan kesalahan berkabel.
Dalam kode saya:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Saya mendapatkan kesalahan lint:
AppCompatActivity.onCreate can only be called from within the same library group (groupId=com.android.support)
Bagaimana cara mencegah perilaku seperti itu?
invalidateOptionsMenu()
dengansupportInvalidateOptionsMenu()
. itu harus melakukan pekerjaanJawaban:
Seperti yang Felipe tunjukkan dalam komentarnya, ini adalah bug dalam versi pra-rilis alat.
Anda dapat mengatasinya untuk saat ini, hingga Google merilis perbaikan, dengan menambahkan berikut ini ke dalam file build.gradle modul proyek Anda:
Perlu dicatat bahwa ini mungkin menyembunyikan kesalahan sebenarnya dalam proyek Anda karena ini menekan semua kesalahan jenis itu, jadi opsi yang lebih baik adalah menurunkan versi Android Studio dan alat yang digunakan dalam proyek tersebut.
sumber
//noinspection RestrictedApi
.Seperti tanggapan sebelumnya yang disorot, itu adalah bug. Saya sarankan untuk tidak menonaktifkan peringatan lint spesifik di seluruh proyek, tetapi hanya untuk metode itu. Beri keterangan metode Anda sebagai berikut:
sumber
//noinspection RestrictedApi
yang disembunyikan sebagai komentar, dan hanya membungkam peringatan di IDE, tetapi tidak pada waktu kompilasi), dan berfungsi dengan versi terbaru Android Studio dan Gradle.Menonaktifkan peringatan di lintOptions tampaknya bukan merupakan pilihan yang baik, lebih baik hentikan pemeriksaan di tingkat pernyataan.
Tambahkan komentar ini di atas baris kode yang memberikan peringatan:
sumber
@SuppressLint("RestrictedApi")
sebagai ganti//noinspection RestrictedApi
tanpa masalah di Android Studio 3