Android Studio nie przekierowuje mnie poprawnie do źródeł API. Kiedy trafię na jakąkolwiek funkcję, dekompiluje kod bajtowy pliku .class zamiast uzyskać dostęp do odpowiedniego pliku z drzewa sdk / sources. Kliknięcie opcji „pobierz” i „odśwież” nic nie daje. Jest to szczególnie denerwujące w przypadku implementowania detektorów, ponieważ generuje nagłówki funkcji bez zmiennych z dokumentacji (tj. Var1, var2 itp.). Zainstalowałem API 23 (platforma SDK, narzędzia, dokumenty, źródła). Ustawiłem kompilację i docelowy zestaw SDK na 23. Próbowałem ponownie zainstalować narzędzia SDK, zaktualizować AS z kanału canary, unieważnić pamięć podręczną, ale jak dotąd nic nie pomogło. Przerzuciłem się na API 21 i działa dobrze.
czego mi brakuje?
Mój build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '23.0.2'
defaultConfig {
applicationId "com.myapp.app"
minSdkVersion 10
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile project(':volley')
compile 'com.jakewharton:butterknife:7.0.1'
}
Poniżej możesz znaleźć wyjście gradle dla pustego projektu (bez bibliotek innych firm) z tym samym zestawem API 23 i tym samym zachowaniem.
Executing tasks: [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies]
Configuration on demand is an incubating feature.
Incremental java compilation is an incubating feature.
:clean
:app:clean
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAnimatedVectorDrawable2330Library
:app:prepareComAndroidSupportAppcompatV72330Library
:app:prepareComAndroidSupportDesign2330Library
:app:prepareComAndroidSupportRecyclerviewV72330Library
:app:prepareComAndroidSupportSupportV42330Library
:app:prepareComAndroidSupportSupportVectorDrawable2330Library
:app:prepareDebugDependencies
:app:compileDebugAidl
:app:compileDebugRenderscript
:app:generateDebugBuildConfig
:app:mergeDebugShaders
:app:compileDebugShaders
:app:generateDebugAssets
:app:mergeDebugAssets
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources
:app:mergeDebugResources
:app:processDebugManifest
:app:processDebugResources
:app:generateDebugSources
:app:preDebugAndroidTestBuild UP-TO-DATE
:app:prepareDebugAndroidTestDependencies
:app:compileDebugAndroidTestAidl
:app:processDebugAndroidTestManifest
:app:compileDebugAndroidTestRenderscript
:app:generateDebugAndroidTestBuildConfig
:app:mergeDebugAndroidTestShaders
:app:compileDebugAndroidTestShaders
:app:generateDebugAndroidTestAssets
:app:mergeDebugAndroidTestAssets
:app:generateDebugAndroidTestResValues UP-TO-DATE
:app:generateDebugAndroidTestResources
:app:mergeDebugAndroidTestResources
:app:processDebugAndroidTestResources
:app:generateDebugAndroidTestSources
:app:mockableAndroidJar
:app:preDebugUnitTestBuild UP-TO-DATE
:app:prepareDebugUnitTestDependencies
BUILD SUCCESSFUL
Odpowiedzi:
Najwyraźniej ten problem został rozwiązany w Android Studio 2.1. Uruchom ponownie konfigurację Menedżera Android SDK w Android Studio i to powinno rozwiązać problem.
W Android Studio:
Windows: Plik -> Ustawienia (ctrl + alt + s) -> Wygląd i zachowanie -> Ustawienia systemowe -> Android SDK.
Mac: Android Studio -> Preferencje (cmd +,) -> Wygląd i zachowanie -> Ustawienia systemu -> Android SDK.
Kliknij Edytuj po prawej stronie lokalizacji Android SDK. Kliknij przycisk Dalej w kreatorze, co powinno rozwiązać problem.
Ten odpowiedział tutaj dla innej kwestii.
źródło
Dla osób borykających się z tym samym problemem rozwiązanie jest w tym poście dla Linuksa iw tym samym temacie tutaj dla Windows (dzięki Aamir Abro ). Zasadniczo musisz edytować plik jdk.table.xml dla brakującego poziomu API. Nie wiem dlaczego, ale z Androidem 2.0 i 2.1 RC nie zostały wypełnione
<root type="composite" />
w<sourcePath>
. Zaktualizowałem ścieżkę źródeł<root type="simple" url="file://D:/android/sdk/sources/android-23" />
i teraz działa.Lokalizacja pliku użytkownika systemu Windows : C: \ Users {USER_NAME} .AndroidStudio2.0 \ config \ options \ jdk.table.xml
Lokalizacja pliku użytkownika systemu Linux : ~ / Library / Preferences / AndroidStudioBeta / options / jdk.table.xml
Edytować:
Dla niektórych osób zresetowanie lokalizacji SDK pomogło w źródle .
źródło
Jak wspomniał qbeck w swoim komentarzu, zresetowanie ścieżki do SDK rozwiązało problem dla niektórych z nas.
Rozwiązanie:
źródło
File -> Settings -> Appearance&Behavior -> System Settings -> Android SDK
Napotkano ten sam problem dla poziomu API 28 w Android Studio 3.2.1 w systemie Windows 10. Odświeżanie nie działa.
Działał po ponownym uruchomieniu Android Studio.
źródło
aby zaktualizować Android Studio do Api 23 przejdź do:
Tools > Android > SDK Manager
,możesz przejść, a następnie przejść do
SDK Tools
zakładki lub kliknąćLaunch Sdandalone SDK Manager
. sprawdź,Android SDK Build-tools 23.0.2
aby zainstalowaćAktualizacja:
proszę, usuń ze swoich zależności:
i zamień na:
źródło
Czasami pojawiały się 2 błędy, pierwszy brzmiał: „platforma android 28 nie została znaleziona”, kliknij dalej, „zaakceptuj umowę licencyjną ...”. Po zaakceptowaniu umowy oba błędy znikną.
źródło