почему R не существует ошибка приходит в Android? - PullRequest
14 голосов
/ 27 декабря 2010
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:196: package R does not exist
                  addPreferencesFromResource(R.xml.myfile);
                                              ^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:344: package R does not exist
        menu.add(0, MENU_SAVE, 0, R.string.menu_save)
                                   ^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:346: package R does not exist
        menu.add(0, MENU_CANCEL, 0, R.string.menu_cancel)
                                     ^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:454: package R does not exist
                     errorMsg = mRes.getString(R.string.error_empty);
                                                ^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:458: package R does not exist
                     errorMsg = mRes.getString(R.string.error_empty);

Ответы [ 7 ]

19 голосов
/ 05 апреля 2013

В моем случае эта ошибка произошла из-за того, что я изменил имя пакета приложения (конечно, перед публикацией в Google Play), но забыл обновить атрибут package элемента manifest в моем AndroidManifest.xml файл. Как только атрибут package согласуется с новым именем пакета, ошибка исчезла.

18 голосов
/ 08 августа 2011

Убедитесь, что у вас есть: пакет «ВАШЕ ИМЯ ПАКЕТА» в java-файле, который вызывает класс R

12 голосов
/ 27 декабря 2010

Проверьте, есть ли какие-либо ошибки в ваших файлах ресурсов или отсутствующие зависимости. Любой из них приведет к тому, что класс R.java не будет генерироваться кодом, и, таким образом, будет много ошибок, подобных тем, которые вы показали.

3 голосов
/ 27 декабря 2010
  1. Попробуйте Clean-> Build (Если не просто перезапустить затмение, оно просто сработало!)
  2. Если вы импортируете проект, убедитесь, что вы выбрали правильный уровень.
0 голосов
/ 17 декабря 2012

Вы можете попробовать импортировать packagename.R;

0 голосов
/ 04 мая 2011

Также обязательно включите вашу текущую активность в файл AndroidManifest.xml внутри тегов приложения. Так что, если MyFile - ваш подкласс Activity, у вас должно быть что-то вроде этого:

<application 
    android:label="@string/app_name" 
    ... >

        <activity android:name=".MyFile"
            android:configChanges="orientation|keyboardHidden"
            android:label="@string/app_name">
            <intent-filter> 
                <action android:name="android.intent.action.VIEW" /> 
            </intent-filter> 
        </activity>
        ..


</application>

Хотя что там на самом деле зависит от вашей активности. Более подробная информация об этом: http://developer.android.com/guide/topics/manifest/manifest-intro.html

0 голосов
/ 29 апреля 2011

Если вы строите из скрипта ant, вы должны запустить aapt. Смотрите цель "-resource-src" в $ SDK_DIR / tools / ant / main_rules.xml.

...