programing

Google Play Services Library 업데이트 및 누락 기호 @integer/google_play_services_version

stoneblock 2023. 8. 17. 20:34

Google Play Services Library 업데이트 및 누락 기호 @integer/google_play_services_version

내 프로젝트를 최신 버전의 Google Play Services(v4.0, 2013년 할로윈에 출시)로 업그레이드할 때, 이제 새 태그를 추가해야 합니다.AndroidManifest.xmljava.

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

안타깝게도 이 작업을 수행하려고 하면 다음과 같은 컴파일 오류가 발생합니다.

android-apt-compiler: /blahblah/AndroidManifest.xml:409: error: Error: No resource found that matches the given name (at 'value' with value '@integer/google_play_services_version').

그러면 다음 위치의 파일로 이동할 수 있습니다.google-play-services_lib/res/values/version.xml해당 기호의 원시 정수를 봅니다.

<integer name="google_play_services_version">4030500</integer>

그런 다음 다시 내 안에 삽입합니다.AndroidManifest.xml:

<meta-data
    android:name="com.google.android.gms.version"
    android:value="4030500" />

이 작업을 수행하는 것은 매우 잘 작동하며 프로젝트와 앱을 컴파일하고 실행할 수 있습니다.그러나 업그레이드 가능성에 문제가 있는 것은 분명 바람직하지 않은 해결책입니다.

아이디어 있어요?

Eclipse를 사용하는 모든 사용자는 다음과 같이 해야 합니다.

Eclipse -> Import -> 기존 안드로이드 코드 -> Browse -> Google-play-services_lib FOLDER(안드로이드-sdk/extra/구글/구글_play_services/lib project)로 이동합니다.

그럼, 당신의 프로젝트에서.

control click -> properties -> Android -> 라이브러리 추가 -> 방금 가져온 프로젝트 선택 -> OK

이 수정 사항은 IntelliJ 사용자에게만 적용될 수 있습니다!!(이 게시물 하단의 모든 사용자에게 적용되는 추가 정보)

이 문제를 해결했습니다!저는 IntelliJ를 사용하고 있으며, 제가 포함하는 방식을 잘못 구성한 것으로 드러났습니다.google-play-services_lib모듈을 종속성으로 지정합니다.

파일을 편집하지 않고 GUI를 통해 수정했기 때문에 다음과 같은 스크린샷이 있습니다.

Step 1 - Initial Project Structure그래서 제 프로젝트 구조는 이렇게 보이기 시작했습니다.

Step 2 - Removed google-play-services library그리고 나서 저는 그것을 제거했습니다.google-play-services라이브러리를 선택한 다음 맨 아래의 빼기 단추를 클릭하여 종속성 목록에서 라이브러리를 선택합니다.내 프로젝트에는 이 라이브러리가 필요하기 때문에 대화 상자 하단의 오류에 주목하십시오.하지만 걱정하지 마세요, 곧 다시 추가할 거예요!

Step 3 - Added google-play-services as a module dependency다음에 추가했습니다.google-play-services_lib라이브러리 종속성 대신 모듈 종속성으로 사용할 수 있습니다.그런 다음 아래에 있는 위쪽 화살표 버튼을 두어 번 눌러 이 종속성을 목록의 맨 위로 이동했습니다.하지만 하단의 오류에 주목하십시오(아직 완료되지 않았습니다!).)

Step 4 - Click the lightbulb to add the google-play-services library as a dependency그런 다음 오류 메시지 영역의 대화 상자 하단에 있는 전구를 클릭하여 두 가지 옵션을 제공하는 작은 팝업을 표시했습니다(의존성에 추가...).또는 라이브러리 제거).종속성에 추가...를 클릭합니다.옵션!

Step 5 - Add the library to the google-play-services_lib module새 작은 대화창이 떴어야 합니다.에게 두 선택권을 . 는 제 프로젝트를는 제 이름이 것입니다. 하나는 제 메인 프로젝트(이름이 모호하게 가려져 있음)이고, 다른 하나는 다음으로 다른 선택권을 주었습니다.google-play-services_lib프로젝트.프로젝트에 따라 더 많은 정보를 얻을 수 있습니다(보시다시피).actionbarsherlock그런 것들).를 선택합니다.google-play-services_lib확인을 클릭합니다.

그리고 마침내, 당신은 끝났습니다!이것이 저 밖에 있는 다른 누군가에게 도움이 되길 바랍니다!

추가 정보

이 문제가 시작된 이유는 제가 전체를 적절하게 포함했다고 생각했기 때문이라고 생각합니다.google-play-services_lib내 프로젝트 전체에 투영...하지만 실제로는 없었고, 대신 제대로 된 jar 파일만 포함시켰습니다.google-play-services_lib/libs/google-play-services.jar) . . .jar 파일에는 Android 리소스 값이 포함되어 있습니다.@integer/google_play_services_version가치는 결코 제 프로젝트에 있지 않았습니다.하지만 그 코드는 제 프로젝트에 사용될 수 있었고, 그래서 모든 것이 괜찮은 것처럼 보였습니다.

그리고 참고로, 이 문제를 해결한 것도 문제를 해결한 것으로 보입니다.GooglePlayServicesUtil.getErrorDialog(...).show()내가 가지고 있던 충돌.하지만 그것은 업데이트로 해결될 수도 있었습니다. 실제로 100% 확실한 것은 아닙니다.

저는 같은 문제에 직면했고, 분명히 이클립스는 어떻게든 떠났습니다.version.xml/ in /res/values in "에서 /res/values"로 합니다.google-play-services_lib복사할 때 프로젝트를 수행합니다.원본 프로젝트에서 파일을 꺼내 프로젝트 복사본에 붙여 넣었더니 문제가 해결되었습니다.

Eclipse에서 Google Play 라이브러리를 프로젝트 작업 공간으로 가져온 후 version.xml 파일을 복사했습니다.

google-play-services_lib/res/values/version.xml

로.

MyProjectName/res/values/version.xml

Gradle을 사용하는 모든 사용자에게: 프로젝트 소스를 포함하지 말고 SDK Manager를 사용하여 다운로드하고 종속성에 이 행을 추가합니다.

compile 'com.google.android.gms:play-services:4.0.30'
  1. Android SDK Manager에서 "Google Play Services" 및 "Google Repository"를 설치합니다.
  2. 을 합니다.compile 'com.google.android.gms:play-services:4.1.32@aar'의 신에게에.build.gradle.
  3. "는 다음과 같습니다.@integer/google_play_services_version사용할 수 있습니다.

즉석에서 프로젝트가 이전 버전의 Play Services 라이브러리 프로젝트에 연결되어 있는 것처럼 느껴집니다.Google에서 권장하는 방법은 SDK에서 라이브러리 프로젝트를 찾아 로컬 복사본을 만드는 것입니다.그러나 SDK 관리자를 통해 Play Services 라이브러리 프로젝트를 업데이트할 때마다 복사본을 새 복사본으로 교체해야 합니다.

저도 구글_play_services_froyo를 사용하려다가 우연히 발견했습니다.

다음 버그를 제출했습니다. https://code.google.com/p/google-plus-platform/issues/detail?id=734

이전 버전으로 업데이트한 후 모든 프로젝트에서 이 문제가 발생했지만 라이브러리 참조를 다시 추가하는 것만으로 해결되었습니다.

가 없으면같이 를 추가할 수 .File->Import->Existing Android Code Into Workspace 후 -> 검및색으로 합니다.google-play-services_liblib (프로젝트 lib), (android-sdk/extras/google/google_play_services/libproject).

enter image description here

삭제합니다./bin그리고./gen프로젝트 폴더(정리 옵션과 유사한 폴더) 및 프로젝트를 다시 빌드합니다.

이클립스를 위해 해결됨

다음 단계를 수행합니다.

  1. 프로젝트로 Google-play-services_lib 폴더 가져오기 ->기존 Android Code Into Workspace를 사용하여
  2. 프로젝트 속성에서 Android 섹션을 선택하고 라이브러리 섹션의 하단에서 추가를 클릭한 후 Google-play-services_lib를 선택하고 적용 https://i.stack.imgur.com/opSeJ.png 링크를 따라 스크린샷을 봅니다.

Google의 Android Developer 사이트에는 "프로젝트에 Google Play 서비스 추가"에 대한 지침이 있으며, Play Services 버전을 업그레이드하는 방법과도 관련이 있습니다.Eclipse, Android Studio 또는 "다른 것"에 대한 지침을 볼 수 있는 드롭다운 메뉴도 있습니다.변경될 경우를 대비해 지시사항을 볼 수 있는 최적의 장소가 그곳일 것입니다.페이지는 다음과 같습니다.

http://developer.android.com/google/play-services/setup.html

하지만 대부분의 답변은 이클립스에 대한 것이므로, 여기 Android Studio로 Play Services를 업그레이드하기 위한 간단한 요약이 있습니다.

  1. 응용 프로그램 모듈 디렉토리 내의 build.gradle 파일을 엽니다.참고: Android Studio 프로젝트에는 각 모듈에 대한 최상위 build.gradle 파일과 build.gradle 파일이 포함되어 있습니다.응용 프로그램 모듈의 파일을 편집해야 합니다.
  2. 개발 컴퓨터에 다운로드한 플레이 서비스의 버전을 참조하도록 "의존성" 아래의 빌드 규칙을 업데이트합니다.

개발 컴퓨터에 다운로드한 플레이 서비스 버전의 버전 번호는 \sdk\extra\google\m2repository\com\google\android\gms\play-services 폴더에서 확인할 수 있습니다.Google Play Services 버전을 설치 버전과 일치시키려면 어떻게 해야 합니까?

Eclipse의 경우 다음에 있는 Google-play-services_lib에 프로젝트 참조를 추가했습니다.

Properties-Android 라이브러리 창(아래쪽 창)에 Google-play-services_lib가 나열되어 있는지 확인합니다.그렇지 않은 경우 추가를 클릭합니다.버튼을 누르고 Google-play-services_lib를 선택합니다.

저도 같은 문제가 있었습니다. version.xml 파일이 Google-play-services_lib에 없었습니다.sdk 관리자를 시작하고 업데이트, 특히 "추가"와 관련된 내용을 수락하십시오.

Google-play-services_lib를 가져오는 동안 AndroidManifest.xml 및 version.xml에 정의된 버전 코드를 확인합니다.버전 코드의 차이를 발견하고 4242000으로 변경하였습니다.변경 후 @integer/google_play_services_version에서 더 이상 컴파일 오류가 발생하지 않습니다.enter image description here

myModule:appgradle 빌드 파일에 Google Play 서비스를 추가하여 수정되었습니다.설명서에는 GMS를 업데이트할 때 버전을 업데이트하라는 내용도 나와 있습니다.

dependencies {

compile 'com.google.android.gms:play-services:9.6.1'

} 

다음은 Google Play 서비스 Lib를 사용할 때 많은 오류를 방지하는 주요 작업입니다.

  1. lib 프로젝트를 Eclip 프로젝트 작업 공간에 복사해야 합니다.
  2. Google Play 서비스 lib 프로젝트의 대상 SDK는 "Google"이어야 합니다.
  3. API" 3 - 메타데이터를 매니페스트 파일에 추가해야 합니다.
  4. 프로젝트 대상 SDK는 19로 완전히 업데이트하지 않은 경우 17이어야 합니다. 19가 제대로 작동하지 않는 경우도 있기 때문입니다.

메이븐과 인텔리J를 이용한 프로젝트에서도 같은 문제가 있었습니다.Google Play 서비스가 메이븐 종속성으로 추가되었습니다.는 이 된 기호에 했습니다.@integer/google_play_services_version

저의 경우 메이븐 POM 파일을 강제로 업데이트했더니 문제가 해결되었습니다.

저의 경우, 앱의 소스 코드와 동일한 드라이브에 있는 Google-play-services_lib FOLDER를 복사해야 했습니다.

  • F:\제품\안드로이드\APP*.java <- 내 앱이 여기 있어서 아래 폴더에 복사했습니다.
  • F:\제품\Android\libs\google 플레이 서비스_lib

IDE를 사용하지 않고 명령줄 빌드(ant 및 ndk-build 사용)를 사용하는 경우 다음과 같이 해결할 수 있습니다.

'안드로이드' 명령을 사용하여 필요한 모든 부품을 설치합니다.그런 다음 프로젝트 루트에 Google-play-service_lib/ 복사본을 만듭니다.다음 행을 포함하도록 project.properties를 편집합니다.

android.library.reference.1=./google-play-services_lib

Windows 10 환경의 Android Studio 3.3.2

파일 -> 캐시/다시 시작을 무효화하고 선택invalidate and Restart대화 상자의 단추가 나타납니다.

저도 같은 문제가 있었습니다.문제는 "google-play-services.jar"가 google_play_service_lib 프로젝트의 일부임에도 불구하고 제 프로젝트로 제대로 가져오지 않았다는 것입니다.Eclipse를 사용하는 경우 Android Private Libraries 섹션에 Play Services jar 파일이 표시되는지, 라이브러리에서 내보냈는지 확인하십시오.

Android SDK 플랫폼 도구 버전 17(19개가 아님)과 Android SDK 도구 버전 22.0.1을 사용하고 있습니다.

방금 Android SDK Manager의 Extra 폴더에서 Google Play 서비스를 업데이트했습니다.

저에게 문제는 도서관 프로젝트와 놀이 서비스를 이용한 프로젝트가 다른 디렉토리에 있다는 것이었습니다.그래서 그냥:

  • 1. 동일한 작업 공간에 파일을 추가한 다음 라이브러리를 제거합니다.
  • 2. 일식 다시 시작
  • 3. 라이브러리 프로젝트를 다시 추가합니다.
  • 4.클리어

Google은 SDK 디렉토리에서 직접 프로젝트를 만들지 말 것을 제안합니다.lib 프로젝트를 앱이 있는 위치로 복사한 다음 거기서 가져오는 것이 좋습니다.그렇지 않으면 다음에 다른 앱에 대한 프로젝트를 가져올 때 이미 사용 중입니다.

https://developer.android.com/google/play-services/setup.html

참고: 개발 작업 공간에 복사한 라이브러리의 복사본을 참조해야 합니다. Android SDK 디렉토리에서 직접 라이브러리를 참조해서는 안 됩니다.

2017년을1 버전의 는 2017년을 수입해야 .play-services-basement((예전에)에 있을 때 play-services-base).

저도 같은 문제가 있었습니다. 이 두 줄을 빌드에 추가하십시오. grade 문제는 아마 해결될 것입니다. ;)

dependencies {  
  implementation 'com.google.android.gms:play-services:12.0.1'  
  implementation 'com.google.android.gms:play-services-vision:10.0.0'    
}

언급URL : https://stackoverflow.com/questions/19843784/google-play-services-library-update-and-missing-symbol-integer-google-play-serv