Cara Memperbaiki Aplikasi Error Akibat Kesalahan Open With

Cara Memperbaiki Aplikasi Error Akibat Kesalahan Open With

Halaman ini melacak penyakit umum pada Android Bengkel seni Chipmunk | 2021.2.1 dan plugin Android Gradle 7.2.2. Jika mengalami masalah nan belum dicakup di sini, harap laporkan bug.

Upgrade ke pratinjau:
Setiap rilis Android Studio dan plugin Android Gradle bertujuan untuk meningkatkan pengukuhan dan pengejawantahan, serta menambahkan fitur baru. Untuk merasakan manfaat rilis mendatang sekarang, download dan instal Pratinjau Android Studio.

Masalah Publik terkait Android Sanggar

Episode ini menjelaskan masalah umum yang terserah di versi stabil terbaru Android Studio.

Terjadi error ketika merender Pratinjau Compose

Mulai dari Android Bengkel seni Chipmunk, jika Anda melihat
java.lang.NoSuchFieldError: view_tree_saved_state_registry_owner
atau
java.lang.ClassNotFoundException: androidx.savedstate.R$id
di panel problem, pastikan cak bagi menyertakan dependensi
debugImplementation
ke
androidx.lifecycle:lifecycle-viewmodel-savedstate
di modul Sira.

Sekiranya Beliau menyibuk
java.lang.NoSuchFieldError: view_tree_lifecycle_owner
di panel masalah, pastikan kerjakan mengikutsertakan ketagihan
debugImplementation
ke
androidx.lifecycle:lifecycle-runtime
dalam modul Anda.

Jika Anda melihat
java.lang.NoClassDefFoundError: Could not initialize class androidx.customview.poolingcontainer.PoolingContainer
maupun
java.lang.NoClassDefFoundError: androidx/customview/poolingcontainer/PoolingContainerListener
di panel ki kesulitan, pastikan untuk melibatkan dependensi
debugImplementation
ke
androidx.customview:customview-poolingcontainer
dalam modul Anda.

Terjadi error saat memperalat sandi yang berbeda bagi kancing dan keystore

Mulai versi 4.2, Android Studio kini bisa berjalan di JDK 11. Update ini menyebabkan perubahan perilaku yang mendasarinya tersapu dengan resep penandatanganan.

Saat Anda membuka
Build
>
Generate Signed Bundle / APK

dan menyedang mengonfigurasi penandatanganan aplikasi bakal app bundle atau APK, dengan memasukkan sandi yang berbeda kerjakan kunci dan keystore dapat menyebabkan error berikut:

        Key was created with errors: Warning: Different store and Key passwords not supported for PKCS12 Key stores
        
      

Kebaikan menuntaskan problem ini, masukkan sandi yang setimbang untuk kunci dan keystore.

Android Studio tak dimulai setelah menginstal versi 4.2

Bengkel seni mencoba mengimpor versi
.vmoptions
sebelumnya dan membersihkannya semoga berfungsi dengan pengumpul sampah yang digunakan maka itu JDK 11. Seandainya proses tersebut gagal, IDE mungkin tidak dimulai lakukan konsumen tertentu yang menetapkan opsi VM kustom di file
.vmoptions.

Untuk memintasi ki aib ini, sebaiknya Dia memberi komentar opsi kustom di
.vmoptions
(menunggangi budi “#”). File
.vmoptions
boleh ditemukan di lokasi berikut:

Windows

C:\Users\YourUserName\AppData\[Local|Roaming]\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

Sekiranya Studio masih bukan dimulai selepas menyedang solusi ini, tatap Studio tidak dimulai setelah upgrade di bawah.

Aplikasi yang menunggangi error Database Inspector di emulator Android 11

Permintaan yang menggunakan Database Inspector barangkali enggak bekerja saat berjalan di emulator Android 11, dengan error seperti berikut muncul di logcat:

        
          Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
        
      

Bagi memperbaiki masalah ini, upgrade emulator Android 11 Anda ke versi 9 atau yang lebih baru dengan membuka
Tools > SDK Manager. Di tab
SDK Platforms, centang kotak
Show Package Details, lalu memperbedakan revisi 9 atau yang makin bau kencur dari emulator Android 11.

Studio tidak dimulai setelah upgrade

Jika Studio tidak dimulai setelah upgrade, masalahnya mungkin disebabkan konfigurasi Android Bengkel seni nan tidak teruji yang diimpor dari Android Studio versi sebelumnya atau plugin yang tidak kompatibel. Sebagai solusinya, coba berantas (atau tukar tera, untuk tujuan penamaan) direktori di bawah ini, terampai pada varian Android Bengkel seni dan sistem operasi, lalu menginjak Android Studio lagi. Tindakan ini akan mereset Android Studio ke martabat default, dengan semua plugin pihak ketiga dihapus.

Untuk Android Padepokan 4.1 dan yang bertambah baru:

  • Windows:
    %APPDATA%\Google\AndroidStudio<version>


    Contoh:
    C:\Users\your_user_name\AppData\Roaming\Google\AndroidStudio4.1

  • macOS:
    ~/Library/Application Support/Google/AndroidStudio<version>


    Contoh:
    ~/Library/Application Support/Google/AndroidStudio4.1

  • Linux:
    ~/.config/Google/AndroidStudio<version>

    dan
    ~/.local/share/Google/AndroidStudio<version>


    Contoh:
    ~/.config/Google/AndroidStudio4.1
    dan
    ~/.local/share/Google/AndroidStudio4.1

Untuk Android Bengkel seni 4.0 dan yang lebih lama:

  • Windows:
    %HOMEPATH%\.AndroidStudio<version>\config

    Transendental:
    C:\Users\your_user_name\.AndroidStudio3.6\config

  • macOS:
    ~/Library/Preferences/AndroidStudio<version>


    Contoh:
    ~/Library/Preferences/AndroidStudio3.6

  • Linux:
    ~/.AndroidStudio<version>/config

    Model:
    ~/.AndroidStudio3.6/config

Perhatikan bahwa direktori konfigurasi lakukan rilis Canary dan Beta Android Studio adalah
PreviewX.Y, tak
X.Y
untuk

<version>
. Misalnya, build Android Padepokan 4.1 Canary menggunakan
AndroidStudioPreview4.1, bukan direktori
AndroidStudio4.1
nan digunakan untuk rilis Kandidat Rilis dan rilis Stabil.

Masalah kompilasi di project multiplatform Kotlin

Error kompilasi boleh unjuk di kode MPP Kotlin karena huruf angka nan hilang. Meningkatkan versi plugin Kotlin Anda ke varian 1.4 akan menyelesaikan masalah ini.

Konflik konfigurasi tombol di Linux

Di Linux, pintasan keyboard tertentu bertentangan dengan terobosan keyboard default Linux dan pintasan koordinator perputaran udara naik daun, seperti KDE dan GNOME. Terobosan keyboard yang inkompatibel ini mungkin tidak berfungsi seperti nan diharapkan di Android Sanggar.

Proklamasi seutuhnya adapun ki aib ini (termasuk kemungkinan solusi) bisa ditemukan di pelacak bug IntelliJ.

Teks UI kerdil di Chrome OS

Pada Chrome OS, teks siapa kelihatan jauh lebih kecil daripada rilis sebelumnya. Bikin mengatasi masalah ini, lakukan langkah berikut:

  1. Buka tingkapan
    Settings
    dengan mengklik
    File > Settings
  2. Buka
    Appearance & Behavior > Appearance.
  3. Pilih
    Use custom font.
  4. Tambah ukuran font
  5. Plong jendela
    Settings, urai
    Editor > Font.
  6. Tambah ukuran font
  7. Klik
    OK.

Pengeditan kode

Bagian ini menjelaskan kelainan umum terkait editor kode.

Input keyboard macet – penyakit “iBus” plong Linux

Suka-suka beberapa interaksi umum antara iBus daemon puas Linux dan Android Studio. Dalam sejumlah skenario, IDE memangkal merespons input keyboard alias berangkat menginput budi acak. Bug ini dipicu oleh sejumlah pengharmonisan nan hilang antara iBus dan XLib + AWT, dan telah dilaporkan upstream ke JetBrains dan iBus. Ada tiga solusi untuk masalah ini:

  • Solusi 1:
    Paksa iBus bikin memasuki mode sewaktu. Sebelum memulai Android Studio, jalankan baris berikut di command line:

    $ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd
  • Solusi 2:
    Nonaktifkan input iBus di Android Sanggar. Kerjakan menonaktifkan input iBus buat Android Padepokan saja, jalankan baris berikut pada command line:

    $ XMODIFIERS= ./bin/studio.sh

    Solusi ini hanya menonaktifkan metode input buat Android Studio, bukan aplikasi lain yang bisa jadi Anda jalankan. Perhatikan bahwa jika Anda memulai ulang daemon selagi Android Studio berjalan (misalnya dengan menjalankan
    ibus-daemon -rd), Anda secara efektif menonaktifkan metode input lakukan semua aplikasi tidak dan juga dapat menimbulkan error pada JVM Android Studio akibat kesalahan segmentasi.

  • Solusi 3:
    Periksa kembali binding pintasan lakukan memastikan
    Next input shortcut
    tidak ditetapkan ke Control+Spasi, karena ini pun merupakan pintasan untuk memintasi kode di Android Studio. Ubuntu 14.04 (Trusty) menjadikan Super+Spasi sebagai pintasan default, doang setelan terbit varian sebelumnya bisa jadi masih suka-suka. Bikin memeriksa binding pintasan, jalankan
    ibus-setup
    pada command line buat membuka lubang angin IBus Preferences. Di bagian
    Keyboard Shortcuts, centang
    Next input method. Jika kini ditetapkan ke Control+Spasi, silih menjadi Super+Spasi, atau pintasan tak yang Ia pilih.

Konfigurasi Project

Bagian ini menjelaskan masalah umum tersapu konfigurasi project dan sinkronisasi Gradle.

Penyerasian Gradle Gagal: Gudu-gudu Rusak

Masalahnya adalah daemon Gradle mencoba memperalat IPv4, bukan IPv6.

  • Solusi 1: Di Linux, masukkan derek berikut di
    ~/.profile
    atau
    ~/.bash_profile:

                export _JAVA_OPTIONS="-Djava.pukat.preferIPv6Addresses=true"
              
  • Solusi 2: Dalam file vmoptions Android Studio, ubah derek
    -Djava.net.preferIPv4Addresses=true
    menjadi
    -Djava.pukat.preferIPv6Addresses=true. Lakukan deklarasi seutuhnya, lihat Panduan Konsumen Networking IPv6.

Error “peer titinada authenticated” berpangkal sinkronisasi Gradle atau SDK Manager

Akar kebobrokan error ini merupakan adanya inskripsi yang hilang internal
$JAVA_HOME/jre/lib/certificates/cacerts. Buat menguasai error ini, lakukan anju berikut:

  • Seandainya Anda menunggangi proxy, cobalah membuat susunan langsung. Jika koneksi serempak berfungsi, maka hendaknya dapat terhubung melintasi proxy, Anda bisa jadi harus menunggangi
    keytool
    untuk menambahkan inskripsi server proxy ke file cacerts.
  • Instal ulang JDK yang didukung dan belum dimodifikasi. Terserah masalah publik yang memengaruhi pengguna Ubuntu, yang menghasilkan
    /etc/ssl/certs/java/cacerts
    kosong. Untuk mengatasi masalah ini, jalankan jajar berikut pada command line:

    sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure

Men-deploy

Bagian ini menjelaskan keburukan umum terkait men-deploy aplikasi Ia ke perkakas nan terhubung.

[Eksklusif Mac OS] Update inkremental tidak diterapkan karena cak semau masalah sreg file Gradle yang diamati di project yang disimpan privat
/System/Volumes/Data

Masalah Gradle 18149 memengaruhi Plugin Android Gradle varian 7.0 dan yang lebih baru karena memerlukan Gradle versi 7.0 dan nan lebih plonco. Mulai Gradle 7.0, pengamatan file diaktifkan secara default. Kalau Ia memperalat Mac OS dan project disimpan di
/System/Volumes/Data, pengamatan file Gradle tidak akan melacak perubahan file dengan benar. Hal ini akan menyebabkan Sistem Build tidak melihat transisi file barang apa pun, sehingga lain akan mengupdate APK. Kode deployment inkremental adv amat tidak akan melakukan apa juga karena pamor APK lokal sebagai halnya yang ada di perangkat.

Bikin menyelesaikan masalah ini, Anda harus menularkan direktori project ke direktori pemakai, adalah di episode
/Users/username. Sistem Build kemudian akan diberi tahu dengan benar tentang perubahan file oleh pengamatan file Gradle dan perlintasan inkremental akan berhasil diterapkan.

Android Emulator HAXM di macOS High Sierra

Android Emulator sreg macOS High Sierra (10.13) memerlukan HAXM 6.2.1+ untuk kompatibilitas dan pemantapan terbaik di macOS. Hanya, macOS 10.13 memiliki proses yang lebih n domestik lakukan menginstal ekstensi kernel seperti HAXM. Dia harus mengizinkan secara manual penginstalan ekstensi kernel tersebut sebagai berikut:

  1. Permulaan, cobalah menginstal HAXM varian terbaru semenjak SDK Manager.
  2. Plong MacOS, buka
    System Preferences > Security and Privacy.
  3. Seandainya Engkau melihat peringatan bahwa
    System software from developer “Intel Corporation Apps” was blocked from loading, klik
    Allow:

Kerjakan informasi dan solusi lebih lanjut, lihat pekarangan web Apple ini dan Masalah 62395878.

Apply Changes

Putaran ini menjelaskan masalah umum nan tercalit Apply Changes.

Nama aplikasi baru tidak diterapkan

Jika Engkau menggilir nama aplikasi lalu mencoba menerapkan persilihan tersebut, nama yang diperbarui mungkin tak ditampilkan. Untuk mengatasi masalah ini, klik
Run
Ikon Run
buat men-deploy ulang permintaan serta menyibuk perlintasan.

Masalah di Android Runtime menyorongkan error

Jika Kamu menggunakan gawai yang menjalankan Android 8.0 ataupun 8.1, Engkau siapa menerima pesan “VERIFICATION_ERROR” saat menyedang menerapkan jenis perubahan tertentu (terutama jika menunggangi Kotlin). Pesan ini disebabkan oleh masalah dengan Android Runtime yang mutakadim diperbaiki di Android 9.0 dan yang makin baru. Meskipun masalah tersebut menyebabkan Apply Changes gagal, Anda tetap dapat
Run
Ikon Run
petisi cak bagi melihat peralihan. Saja, sebaiknya upgrade perangkat ke Android 9.0 ataupun yang lebih baru.

Proses debug dan pengujian

Episode ini menjelaskan keburukan umum terkait proses debug dan pengujian permintaan.

Pengujian JUnit tidak menyertakan resource kerumahtanggaan classpath detik dijalankan dari Android Padepokan

Takdirnya Anda memiliki folder resource khusus intern modul Java, maka resource tersebut tidak akan dapat ditemukan saat menjalankan pengujian mulai sejak IDE. Andai solusinya, jalankan pengujian menggunakan Gradle terbit command line. Dia juga dapat mengeksekusi tugas
check
Gradle dari IDE. Lihat Masalah 64887 untuk detail selengkapnya.

Masalah ini terjadi karena IntelliJ 13, yang mengharuskan Beliau belaka memiliki satu folder andai classpath. Builder IntelliJ menyalin semua resource ke dalam folder build itu, tetapi Gradle tidak menyalin resource tersebut.

  • Solusi 1: Jalankan tugas
    check
    Gradle berusul IDE, bukan menjalankan pengujian unit.
  • Solusi 2: Perbarui skrip build Anda untuk menyalin resource secara manual ke privat folder build. Tatap komentar nomor 13 kerjakan keterangan selengkapnya.

Menjalankan pengujian JUnit bisa mengakibatkan kode dikompilasi dua mana tahu

Detik membentuk project baru, konfigurasi JUnit template bisa jadi dibuat dengan dua persiapan “Before launch”: Make dan Gradle-aware Make. Selanjutnya, konfigurasi ini disebarkan ke semua konfigurasi run JUnit yang dibuat.

  • Untuk merevisi ki aib pada project momen ini, klik
    Run > Edit Configurations
    dan ubah konfigurasi JUnit default moga belaka menyertakan langkah Gradle-aware Make.
  • Lakukan mengoreksi masalah puas semua project mendatang, klik
    File > Close Project. Anda akan melihat layar persabungan. Lebih jauh, klik
    Configure > Project Defaults > Run Configurations
    dan silih konfigurasi JUnit agar hanya menyertakan awalan Gradle-aware Make.

Beberapa konfigurasi test run tidak berfungsi

Bukan semua konfigurasi run yang cawis detik mengklik kanan metode pengujian jujur. Secara unik, konfigurasi berikut tidak valid:

  • Konfigurasi run Gradle (yang memiliki logo Gradle misal ikon) bukan berfungsi.
  • Konfigurasi run JUnit (yang memiliki ikon minus Android hijau) tidak berlaku pada uji instrumentasi, yang lain boleh dijalankan di JVM lokal.

Android Studio juga menghafaz konfigurasi run yang dibuat dalam konteks tertentu (misalnya, mengklik kanan class maupun metode tertentu), dan bukan akan menawarkan bikin menjalankannya internal konfigurasi berbeda sreg masa mendatang. Untuk memperbaiki problem ini, klik
Run > Edit Configurations
dan berantas konfigurasi yang keseleo dibuat.

Menambahkan breakpoint Java ketika proses debug kode native

Saat aplikasi Anda dijeda puas breakpoint (noktah henti darurat) intern kode native Anda, debugger
Auto
dan
Dual
mungkin tidak serta merta mengenali breakpoint Java baru yang Ia tetapkan. Untuk menghindari ki aib ini, tambahkan breakpoint Java sebelum memulai sesi debug atau selagi permintaan dijeda puas breakpoint Java. Untuk informasi sepenuhnya, tatap masalah 229949.

Pergi debugger native

Momen menggunakan debugger
Auto
maupun
Dual
untuk men-debug kode Java dan native, jika Anda memasuki fungsi native
terbit
kode Java Ia (misalnya, debugger menjeda eksekusi pada baris di kode Java nan memanggil fungsi native dan Dia mengklik
Step Into
) dan Sira kepingin sekali lagi ke kode Java, klik
Resume Program

(tidak
Step Out

ataupun
Step Over
). Proses aplikasi Anda akan tetap dijeda, jadi klik
Resume Program

di tab

your-module-java

untuk melanjutkannya. Untuk informasi sesudah-sudahnya, tatap problem 224385.

Debugger native mengalami hang saat memuat library

Momen menunggangi debugger native lakukan pertama kalinya setelah mengupgrade ke Android Padepokan 4.2 dan nan bertambah tinggi, debugger native bisa nongkrong merespons saat memuat library dari perangkat Android. Masalah ini ialah masalah melekat yang terus terjadi walaupun Engkau menghentikan dan memulai ulang debugger. Bakal memperbaiki keburukan ini, hapus cache LLDB di
$USER/.lldb/module-cache/.

Debugger native mengalami error dengan wanti-wanti “Debugger process finished with exit code 127”

Error ini terjadi pada mimbar berbasis Linux saat memulai debugger native. Hal ini menunjukkan bahwa pelecok satu library yang diperlukan oleh debugger native tidak diinstal di sistem lokal. Nama library nan hilang mungkin sudah lalu dicetak di file
idea.log. Jika lain, Dia boleh menunggangi halte untuk membuka direktori penginstalan Android Studio dan menjalankan command line
bin/lldb/bin/LLDBFrontend --version
untuk mempelajari library yang tidak ada. Biasanya, library yang hilang adalah
ncurses5
karena beberapa persebaran Linux terbaru telah diupgrade ke
ncurses6.

Profiler

Bagian ini mengklarifikasi masalah umum lega Profiler.

Native Memory Profiler: Pembuatan memoar bukan tersedia saat memulai aplikasi

Native Memory Profiler sekarang tidak tersedia sewaktu memulai petisi. Opsi ini akan tersaji dalam rilis mendatang.

Laksana solusinya, Anda dapat menggunakan profiler command line mandiri Perfetto buat cekut profil startup.

Error waktu tunggu di CPU Profiler

Anda mungkin menemukan error “Perekaman gagal nangkring” di CPU Profiler Android Studio detik mengidas konfigurasi
Sample Java Methods
atau
Trace Java Methods. Yang terjadi biasanya error waktu tunggu, terutama jika Dia meluluk pesan error berikut di file
idea.log:

Wait for ART trace file timed out

Error waktu tunggu condong memengaruhi metode yang dilacak tinimbang metode sampel, dan rekaman yang makin hierarki daripada sejarah yang makin ringkas. Bagaikan solusi tentatif, Anda bisa mencoba rekaman yang lebih sumir buat melihat apakah error tersebut menghilang.

Jika Kamu mengalami masalah tahun tunggu plong Profiler, harap laporkan bug yang menyertakan produsen/model perangkat Anda serta entri yang relevan dari
idea.gelondong
dan logcat.

Pengecualian ADB saat menjalankan debug atau membuat profil

Momen menggunakan Tribune Tools 29.0.3, proses debug native dan Android Studio Profiler mungkin enggak berfungsi dengan baik, dan Anda mungkin mengintai “AdbCommandRejectedException” atau “Failed to connect port” dalam file
idea.log
saat Anda memilih
Help > Show Log. Mengupgrade Platform Tools ke versi 29.0.4 atau nan makin plonco akan tanggulang kedua masalah ini.

Kerjakan mengupgrade Podium Tools, lakukan langkah berikut:

  1. Buka SDK Manager dari Android Studio dengan mengklik
    Tools > SDK Manager
    atau klik
    SDK Manager

    di toolbar.
  2. Klik kotak centang di samping
    Android SDK Podium-Tools
    sehingga unjuk tanda centang. Ikon download

    akan muncul di ruangan jihat kidal.
  3. Klik
    Apply
    atau
    OK.

Plugin mencegah jendela Output Build berfungsi

Menggunakan plugin CMake simple highlighter akan mencegah konten unjuk di lubang angin Build Output. Build berjalan dan tab Output Build muncul, tetapi tak terserah output yang dicetak (keburukan #204791544).

Urutan penginstalan mencegah peluncuran

Menginstal Android Studio varian nan kian mentah sebelum versi yang lebih lama dapat mencegah peluncuran varian yang bertambah lama. Misalnya, jika Anda menginstal Android Studio versi canary sampai-sampai dahulu, lalu mencoba menginstal dan meluncurkan versi yang stabil, versi stabil mana tahu tidak diluncurkan. N domestik kasus semacam ini, Anda harus menyetip cache untuk meluncurkan varian stabil (lebih lama). Di macOS, kerjakan menghapus cache, matikan direktori
Library/ApplicationSupport/Google/AndroidStudioversion_number
. Di Windows, kerjakan menghapus cache, gunakan Disk Cleanup.

Komplikasi awam pada Android Gradle Plugin

Bagian ini menjelaskan masalah umum yang cak semau di versi stabil terbaru plugin Android Gradle.

Tidak semua dependensi library fitur dinamis diperiksa lint

Saat menjalankan lint dengan
checkDependencies = true
terbit modul petisi, ketagihan library fitur dinamis bukan diperiksa kecuali juga yaitu kecanduan aplikasi (masalah #191977888). Andai solusinya, tugas lint dapat dijalankan pada library tersebut.

Menandatangani file nan dinamai dengan karakter enter

Penandatanganan JAR (skema v1) tidak mendukung nama file yang berisi karakter enter (masalah #63885809).

AGP 7.2.x tidak secara resmi mendukung API level 33

AGP 7.2.x tidak secara baku kontributif API level 33, dan menampilkan peringatan jika Anda menargetkannya. Bagi menyembunyikan peringatan ini, Sira boleh secara eksplisit mengizinkan SDK yang belum diuji dengan menambahkan kode berikut ke file
gradle.properties:

        android.suppressUnsupportedCompileSdk=33
        
      

AGP 7.3.x, yang disertakan dengan Android Padepokan Dolphin, kondusif Api level 33, makara Anda harus mengupgradenya momen stabil.

Perubahan API

Plugin Android Gradle 3.0.0 dan yang lebih baru memperkenalkan pertukaran Api yang menyetip kebaikan tertentu dan bisa subversif build yang ada. Versi plugin selanjutnya mungkin memperkenalkan API masyarakat bau kencur nan mengambil alih fungsi yang kemungkus.

Output varian mungkin lain dapat dimodifikasi pada waktu build

Penggunaaan Variant Jago merah untuk memanipulasi output varian lain dapat dilakukan dengan plugin baru. Modifikasi masih bisa dilakukan kerjakan tugas-tugas sederhana, seperti mengubah nama APK selama waktu build, seperti yang ditampilkan di bawah ini:

// If you use each() to iterate through the variant objects, // you need to menginjak using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don'kaki langit exist at configuration time with the new model. // However, all() adapts to the new arketipe by picking up object as they are // added during execution. android.applicationVariants.all
        { variant ->     variant.outputs.all
        {         outputFileName = "${variant.name}-${variant.versionName}.apk"     } }
      

Saja, modifikasi tidak berfungsi cak bagi tugas-tugas nan lebih rumit, nan mengikutsertakan akses incaran
outputFile. Alasannya, tugas khusus varian tak lagi dibuat selama tahap konfigurasi. Sebagai kesannya, plugin tidak bisa mengetahui semua output-nya sejak tadinya, tetapi waktu konfigurasi menjadi bertambah cepat.

manifestOutputFile tak lagi cawis

Metode
processManifest.manifestOutputFile()
tidak lagi tersuguh, dan Anda akan mendapatkan error berikut jika memanggilnya:

A problem occurred configuring project ':myapp'.    Could titinada get unknown property 'manifestOutputFile' for task    ':myapp:processDebugManifest' of type    com.android.build.gradle.tasks.ProcessManifest.
      

Alih-alih memanggil
manifestOutputFile()
untuk mendapatkan file konosemen buat setiap varian, Anda dapat memanggil
processManifest.manifestOutputDirectory()
untuk mengembalikan jalur direktori yang memuat semua manifes nan dihasilkan. Lebih jauh Sira bisa menemukan konosemen dan menerapkan logika Anda ke manifes tersebut. Contoh di asal ini secara dinamis mengubah kode versi n domestik konosemen:

android.applicationVariants.all { variant ->     variant.outputs.all { output ->         output.processManifest.doLast {             // Stores the path to the maifest.             String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml"             // Stores the contents of the manifest.             def manifestContent = file(manifestPath).getText()             // Changes the version code in the stored text.             manifestContent = manifestContent.replace('android:versionCode="1"',                     String.format('android:versionCode="%s"', generatedCode))             // Overwrites the manifest with the new text.             file(manifestPath).write(manifestContent)         }     } }
      

Masalah awam nan sudah diperbaiki

Bagian ini menjelaskan masalah umum yang telah diperbaiki kerumahtanggaan rilis terbaru. Kalau mengalami keseleo satu kelainan ini, sebaiknya Ia mengupdate Android Studio ke varian pratinjau atau versi stabil terbaru.

Perbaikan di Android Padepokan 2021.1.1

  • Output lint tak ada: Tak ada output teks lint yang dicetak ke
    stdout
    jika tugas lint adalah
    UP-TO-DATE
    (problem #191897708). Perbaikan di AGP 7.1.0-alpha05.
  • Kelainan detik menguji unit project tuntutan yang menggunakan plugin Hilt: Class pengujian unit berisi class tuntutan nan tidak diinstrumentasi, yang berarti Hilt tidak melengkapi class aplikasi kerjakan menangani dependensi suntikan saat menjalankan pengujian unit (masalah #213534628). Pembaruan di AGP 7.1.1.

Perbaikan di Android Studio 2020.3.1

  • Pengecualian lint di project Kotlin:
    Project Kotlin yang menargetkan
    checkDependencies = true
    bisa jadi mengalami error atau pengecualian pointer null (keburukan #158777858).

Perbaikan di Android Studio 4.2

  • IDE berhenti berfungsi di macOS Big Sur:
    Android Studio 4.1 mana tahu berhenti berfungsi momen Ia membuka dialog.

Perombakan di Android Sanggar 4.1

  • Mulai ulang buat menerapkan setelan memori dari IDE versi sebelumnya:
    Selepas memperbarui Android Studio, Anda harus memulai ulang Android Studio bikin menerapkan setelan memori apa lagi yang dimigrasikan dari IDE versi sebelumnya.
  • Class manifes dengan string izin kustom bukan juga dibuat secara default:
    Kalau Anda ingin membuat class tersebut, tetapkan
    android.generateManifestClass = true.

Perbaikan di Android Studio 3.6

  • Error penginstalan APK di LineageOS: Men-deploy petisi ke perangkat nan menjalankan LineageOS atau CyanogenMod versi tertentu kali akan gagal dan memunculkan pengecualian
    INSTALL_PARSE_FAILED_NOT_APK.

    Pada Android Studio 3.6 Beta 1 dan yang lebih hijau, IDE menindak pengecualian ini dengan melakukan penginstalan aplikasi penuh momen Ia men-deploy permintaan ke perangkat LineageOS atau CyanogenMod, nan mungkin mengakibatkan perian deploy lebih lama.

Perbaikan di Android Studio 3.5.2

  • Gaya kode XML rusak: Detik membetulkan kode XML, IDE menerapkan gaya kode yang salah jika Kamu melembarkan
    Code > Reformat Code
    pecah panel menu.

Perombakan di Android Padepokan 3.3.1

  • Error memori habis ketika memindai project berbasis C++: Ketika Gradle memindai project yang memiliki kode C++ di lebih bermula suatu lokasi pada drive yang sama, pemindaian akan mencengam semua direktori di bawah direktori umum permulaan. Memindai sejumlah besar direktori dan file dapat membentangkan error memori tinggal.

    Untuk maklumat selengkapnya tentang masalah ini, baca bug nan terkait dengan masalah tersebut.

Cara Memperbaiki Aplikasi Error Akibat Kesalahan Open With

Source: https://developer.android.com/studio/known-issues?hl=id

Read:  Cara Menggunakan Vpn Di Android Xiaomi

You May Also Like