problem z R android studio

0

R przestało działać, nie wiem jak to naprawić. Wcześniej kopiowałem bibliotekę R z innej activity, ale teraz nigdzie jej nie ma i nie mam skąd skopiować. Porady z neta, że mam zrobić clear i build też nic nie dają, bo wyrzuca błąd. Jak to naprawić? Chodzi o wskazywanie zasobów przez R.layout.costam

Wam tez tak czesto android studio wali na leb? Teraz zaklada nowe projekty bez activity...........................

0

Pół godziny szukania w internecie, wklejania, rozkminiania, zakładania nowych projektów i kopiowania, a wystarczył restart komputera. Android Studio ogarnij się frajerze.

0
  1. Wcześniej kopiowałem bibliotekę R z innej activity mógłbyś napisać co dokładnie robiłeś?
  2. Build-> Clean + File -> Invalidate cache and restart. Jeśli nie działa to tak jak poprzednio + ubicie całego AS.
    //EDIT: ten Build -> Clean bywa chimeryczny, warto jeszcze z terminalu potraktować ./gradlew clean assembleBuildVariant na przykład ./gradlew clean assembleAlphaDebug
0
  1. W import miałem bibliotekę zakończoną na R, kopiowałem ją z jednego activity do drugiego i śmigało.

  2. W build mam tylko Clean Project, a jak klikam na to to wyrzuca mi błąd "Android resource linking failed", a ten terminal to jak odpalić? o cmd windowsa chodzi czy coś android studio ma?

W ogóle to czemu co jakiś czas samo z siebie traci ten R. Tyle czasu na walke z tym zmarnowane

0

Klasa R w projekcie jest w pewnym sensie unikalna dla niego. Kopiowanie importu może mieć jako taki sens, jeżeli obie aktywności należą do tego samo projektu (tak w skrócie). Zazwyczaj jednak nie ma sensu tego robić, bo auto importowanie wbudowane w Android Studio powinno się tym zająć bez problemu.

Czemu ta klasa nie jest zawsze dostępna? Bo jest generowana dopiero podczas kompilacji przez narzędzie do pakowania zasobów aplikacji aapt2. Android Studio jest na tyle mądre, żeby dobudowywać tę klasę "w locie" o brakujące zasoby, ale nie zawsze to zrobi. Trzeba wtedy przynajmniej raz zbudować projekt. Możesz o tym poczytać w dokumentacji. Natomiast jeżeli zmienisz nazwę pakietu swojej aplikacji, to automatycznie stare zasoby przestają istnieć i wszystkie importy będą niepoprawne, bo klasa R należy do tego pakietu.

Co do terminala, to możesz korzystać z cmd, ale lepiej i wygodniej korzystać z tego wbudowanego w Android Studio. Na dolnym pasku narzędzi masz do niego dostęp. Ewentualnie na Windowsie skrót Alt+F12 powinien go otworzyć.

0

Kopiowałem własnie z tego samego projektu, ale teraz w żadnym activity jej nie ma i nie mam skąd skopiować ,a te z internetu nie działają pewnie z powodu który opisałeś. Mógłbyś bardziej nakierować?
Terminal jest, ale te komendy wyżej nie działają.

0

W dokumentacji Androida w Internecie jest wszystko. Sam powinieneś umieć znaleźć te informacje.

Natomiast, co do komend w terminalu, to użyj gradlew clean assembleDebug. Nie wiem czy rozwiąże problem, bo możliwe, że zmieniłeś gdzieś po drodze nazwę pakietu aplikacji. Musiałbyś pokazać pliki build.gradle w module app, AndroidManifest.xml i importy w przykładowej aktywności, która nie działa.

0

Nic nie zmieniałem.

0

i w każdej aktywności R przestało działać

import android.content.Intent
import android.media.MediaPlayer
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.os.CountDownTimer
import android.provider.MediaStore
import android.view.View
import kotlinx.android.synthetic.main.activity_gra.*
import kotlin.random.Random
0

Ale kod będziesz dalej trzymał w tajemnicy, rozumiem?

0

build.grandle


apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.lenovo.cotozanuta"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
0

A w jakim pakiecie jest aktywność?

0

Co to pakiet? widze, ze ten problem jest mega złożony jak nie można w internecie tego znaleźć, niezły szajs ten android studio. 15 minut zmarnowane na jakieś głupoty

0

Pytam o zwykły Javowy pakiet. Nie jest to nic związanego z Androidem czy Android Studio. Natomiast nie widzę sensu obwiniania narzędzia za jego nieznajomości i nieumiejętności korzystania z niego.

0

Sprawdź błędy w layoutach, jak są literówki czy inne błędy też wyrzuci R

1 użytkowników online, w tym zalogowanych: 0, gości: 1