在模拟器中使用 Google 登录按钮时遇到问题 [英] Trouble using Google sign-in button in the emulator

查看:19
本文介绍了在模拟器中使用 Google 登录按钮时遇到问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我点击 Google 登录按钮时,它会显示以下对话框.

我点击更新并没有任何反应,但我的 logcat 给出了以下输出.

01-24 07:38:48.121:W/GooglePlayServicesUtil(1305):Google Play 服务已过期.需要 4132500 但找到 403353001-24 07:38:50.321:E/SettingsRedirect(1305):无法重定向到 Google Play 服务的应用设置

我怎样才能让它在我的模拟器上工作?

失败后,我运行以下命令查看错误并得到以下输出:

C:adt-bundle-windows-x86_64-20130729sdkplatform-tools>adb logcat -d -s Packag电子管理器:*---------/dev/log/main 的开头---------/dev/log/system 的开头W/PackageManager(390):运行 ENG 构建:没有 pre-dexopt!D/PackageManager(390):应用程序目录/供应商/应用程序中没有文件W/PackageManager(390):包 com.example.android.apis 需要不可用的 shared 库 com.example.will.never.exist;无视!W/PackageManager(390):包 com.example.android.apis 需要不可用的 shared 库 com.example.will.never.exist;无视!I/PackageManager(390):扫描包的时间:5.417 秒W/PackageManager(390):未授予权限 android.permission.GLOBAL_SEARCH 打包 com.android.quicksearchbox (protectionLevel=18 flags=0x8be45)W/PackageManager(390):未知权限 com.android.smspush.WAPPUSH_MANAGER_com.android.phone 包中的 BINDW/PackageManager(390):未知权限 com.android.vending.billing.BILLING_com.google.android.gsf.login 包中的 ACCOUNT_SERVICEW/PackageManager(390):未知权限 com.android.vending.billing.ADD_CREDcom.google.android.gsf.login 包中的 IT_CARDW/PackageManager(390):未知权限 com.android.vending.billing.IBillingcom.google.android.gsf.login 包中的 AccountService.BIND2W/PackageManager(390):pac 中的未知权限 com.android.vending.TOS_ACKEDkage com.google.android.gsf.loginW/PackageManager(390):包中的未知权限 com.android.chrome.TOS_ACKED年龄 com.google.android.gsf.loginW/PackageManager(390):未授予权限 android.permission.ACCESS_DOWNLOAD_MANAGER 打包 com.android.browser (protectionLevel=18 flags=0x9be45)W/PackageManager(390):未授予权限 android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS 打包 com.android.browser (protectionLevel=2 flags=0x9be45)W/PackageManager(390):不授予权限 android.permission.BIND_APPWIDGET 打包 com.android.widgetpreview (protectionLevel=18 flags=0x8be44)W/PackageManager(390):pa 中的未知权限 android.permission.INSTALL_DRMckage com.android.mmsW/PackageManager(390):未授予权限 android.permission.DELETE_PACKAGES 打包 com.svox.pico (protectionLevel=18 flags=0x8be45)W/PackageManager(390):未授予权限 android.permission.DEVICE_POWER打包 com.android.deskclock (protectionLevel=2 flags=0x48be45)W/PackageManager(390):未授予权限 android.permission.READ_DREAM_STATE 打包 com.google.android.gsf (protectionLevel=2 flags=0x40083e45)I/PackageManager(390): sdcard 上没有安全容器W/PackageManager(390):未授予权限 android.permission.GLOBAL_SEARCH 打包 com.android.quicksearchbox (protectionLevel=18 flags=0x8be45)W/PackageManager(390):未知权限 com.android.smspush.WAPPUSH_MANAGER_com.android.phone 包中的 BINDW/PackageManager(390):未知权限 com.android.vending.billing.BILLING_com.google.android.gsf.login 包中的 ACCOUNT_SERVICEW/PackageManager(390):未知权限 com.android.vending.billing.ADD_CREDcom.google.android.gsf.login 包中的 IT_CARDW/PackageManager(390):未知权限 com.android.vending.billing.IBillingcom.google.android.gsf.login 包中的 AccountService.BIND2W/PackageManager(390):pac 中的未知权限 com.android.vending.TOS_ACKEDkage com.google.android.gsf.loginW/PackageManager(390):包中的未知权限 com.android.chrome.TOS_ACKED年龄 com.google.android.gsf.loginW/PackageManager(390):未授予权限 android.permission.ACCESS_DOWNLOAD_MANAGER 打包 com.android.browser (protectionLevel=18 flags=0x9be45)W/PackageManager(390):未授予权限 android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS 打包 com.android.browser (protectionLevel=2 flags=0x9be45)W/PackageManager(390):不授予权限 android.permission.BIND_APPWIDGET 打包 com.android.widgetpreview (protectionLevel=18 flags=0x8be44)W/PackageManager(390):pa 中的未知权限 android.permission.INSTALL_DRMckage com.android.mmsW/PackageManager(390):未授予权限 android.permission.DELETE_PACKAGES 打包 com.svox.pico (protectionLevel=18 flags=0x8be45)W/PackageManager(390):未授予权限 android.permission.DEVICE_POWER打包 com.android.deskclock (protectionLevel=2 flags=0x48be45)W/PackageManager(390):未授予权限 android.permission.READ_DREAM_STATE 打包 com.google.android.gsf (protectionLevel=2 flags=0x40083e45)I/PackageManager(390):操作:android.intent.action.SENDTO"I/PackageManager(390):类别:android.intent.category.DEFAULT"I/PackageManager(390):方案:短信"I/PackageManager(390):添加首选活动 ComponentInfo{com.android.mms/com.android.mms.ui.ComposeMessageActivity} 用户 0 :I/PackageManager(390):操作:android.intent.action.SENDTO"I/PackageManager(390):类别:android.intent.category.DEFAULT"I/PackageManager(390):方案:smsto"I/PackageManager(390):添加首选活动 ComponentInfo{com.android.mms/com.android.mms.ui.ComposeMessageActivity} 用户 0 :I/PackageManager(390):操作:android.intent.action.SENDTO"I/PackageManager(390):类别:android.intent.category.DEFAULT"I/PackageManager(390):方案:mms"I/PackageManager(390):添加首选活动 ComponentInfo{com.android.mms/com.android.mms.ui.ComposeMessageActivity} 用户 0 :I/PackageManager(390):操作:android.intent.action.SENDTO"I/PackageManager(390):类别:android.intent.category.DEFAULT"I/PackageManager(390):方案:mmsto"I/PackageManager(390):添加首选活动 ComponentInfo{com.android.mms/com.android.mms.ui.ComposeMessageActivity} 用户 0 :W/PackageManager(390): 尝试删除未知系统包 com.android.ve发现W/PackageManager(390): 尝试删除未知系统包 com.android.ve发现W/PackageManager(390): 尝试删除未知系统包 com.google.andandroid.gmsC:adt-bundle-windows-x86_64-20130729sdkplatform-tools>

我该怎么做?

解决方案

我在页面上找到了解决方案 如何在 Android Emulator 中安装 Google Maps v2.

它只适用于 Android 4.22,但我认为同样的想法可以应用到 4.4 版以及相应的文件.

  1. 下载上一页列出的三个文件:com.android.vending-19032013.apk、com.google.android.gms-19032013.apk 和 Google play services lib r5.

  2. 使用普通目标(Android 4.22,API 17)创建一个带有 Intel Atom (x86) 的 AVD 设备(如果您想使用).

  3. 从 Android 控制台安装两个 APK 文件.p>

  4. 为 Android 4.22 创建您的应用

  5. 请勿使用系统的 google-play-services-lib.您必须使用第三个下载的文件.

When I click the Google sign-in button, it shows the following dialog.

I click on Update and nothing happens, but my logcat gives the following output.

01-24 07:38:48.121: W/GooglePlayServicesUtil(1305): Google Play services out of date.  Requires 4132500 but found 4033530
01-24 07:38:50.321: E/SettingsRedirect(1305): Can't redirect to app settings for Google Play services

How can I get this to work on my emulator?

After it failed I ran the following command to see the error and got the following output:

C:adt-bundle-windows-x86_64-20130729sdkplatform-tools>adb logcat -d -s Packag
eManager:*
--------- beginning of /dev/log/main
--------- beginning of /dev/log/system
W/PackageManager(  390): Running ENG build: no pre-dexopt!
D/PackageManager(  390): No files in app dir /vendor/app
W/PackageManager(  390): Package com.example.android.apis desires unavailable sh
ared library com.example.will.never.exist; ignoring!
W/PackageManager(  390): Package com.example.android.apis desires unavailable sh
ared library com.example.will.never.exist; ignoring!
I/PackageManager(  390): Time to scan packages: 5.417 seconds
W/PackageManager(  390): Not granting permission android.permission.GLOBAL_SEARC
H to package com.android.quicksearchbox (protectionLevel=18 flags=0x8be45)
W/PackageManager(  390): Unknown permission com.android.smspush.WAPPUSH_MANAGER_
BIND in package com.android.phone
W/PackageManager(  390): Unknown permission com.android.vending.billing.BILLING_
ACCOUNT_SERVICE in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.billing.ADD_CRED
IT_CARD in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.billing.IBilling
AccountService.BIND2 in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.TOS_ACKED in pac
kage com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.chrome.TOS_ACKED in pack
age com.google.android.gsf.login
W/PackageManager(  390): Not granting permission android.permission.ACCESS_DOWNL
OAD_MANAGER to package com.android.browser (protectionLevel=18 flags=0x9be45)
W/PackageManager(  390): Not granting permission android.permission.SEND_DOWNLOA
D_COMPLETED_INTENTS to package com.android.browser (protectionLevel=2 flags=0x9b
e45)
W/PackageManager(  390): Not granting permission android.permission.BIND_APPWIDG
ET to package com.android.widgetpreview (protectionLevel=18 flags=0x8be44)
W/PackageManager(  390): Unknown permission android.permission.INSTALL_DRM in pa
ckage com.android.mms
W/PackageManager(  390): Not granting permission android.permission.DELETE_PACKA
GES to package com.svox.pico (protectionLevel=18 flags=0x8be45)
W/PackageManager(  390): Not granting permission android.permission.DEVICE_POWER
 to package com.android.deskclock (protectionLevel=2 flags=0x48be45)
W/PackageManager(  390): Not granting permission android.permission.READ_DREAM_S
TATE to package com.google.android.gsf (protectionLevel=2 flags=0x40083e45)
I/PackageManager(  390): No secure containers on sdcard
W/PackageManager(  390): Not granting permission android.permission.GLOBAL_SEARC
H to package com.android.quicksearchbox (protectionLevel=18 flags=0x8be45)
W/PackageManager(  390): Unknown permission com.android.smspush.WAPPUSH_MANAGER_
BIND in package com.android.phone
W/PackageManager(  390): Unknown permission com.android.vending.billing.BILLING_
ACCOUNT_SERVICE in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.billing.ADD_CRED
IT_CARD in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.billing.IBilling
AccountService.BIND2 in package com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.vending.TOS_ACKED in pac
kage com.google.android.gsf.login
W/PackageManager(  390): Unknown permission com.android.chrome.TOS_ACKED in pack
age com.google.android.gsf.login
W/PackageManager(  390): Not granting permission android.permission.ACCESS_DOWNL
OAD_MANAGER to package com.android.browser (protectionLevel=18 flags=0x9be45)
W/PackageManager(  390): Not granting permission android.permission.SEND_DOWNLOA
D_COMPLETED_INTENTS to package com.android.browser (protectionLevel=2 flags=0x9b
e45)
W/PackageManager(  390): Not granting permission android.permission.BIND_APPWIDG
ET to package com.android.widgetpreview (protectionLevel=18 flags=0x8be44)
W/PackageManager(  390): Unknown permission android.permission.INSTALL_DRM in pa
ckage com.android.mms
W/PackageManager(  390): Not granting permission android.permission.DELETE_PACKA
GES to package com.svox.pico (protectionLevel=18 flags=0x8be45)
W/PackageManager(  390): Not granting permission android.permission.DEVICE_POWER
 to package com.android.deskclock (protectionLevel=2 flags=0x48be45)
W/PackageManager(  390): Not granting permission android.permission.READ_DREAM_S
TATE to package com.google.android.gsf (protectionLevel=2 flags=0x40083e45)
I/PackageManager(  390):   Action: "android.intent.action.SENDTO"
I/PackageManager(  390):   Category: "android.intent.category.DEFAULT"
I/PackageManager(  390):   Scheme: "sms"
I/PackageManager(  390): Adding preferred activity ComponentInfo{com.android.mms
/com.android.mms.ui.ComposeMessageActivity} for user 0 :
I/PackageManager(  390):   Action: "android.intent.action.SENDTO"
I/PackageManager(  390):   Category: "android.intent.category.DEFAULT"
I/PackageManager(  390):   Scheme: "smsto"
I/PackageManager(  390): Adding preferred activity ComponentInfo{com.android.mms
/com.android.mms.ui.ComposeMessageActivity} for user 0 :
I/PackageManager(  390):   Action: "android.intent.action.SENDTO"
I/PackageManager(  390):   Category: "android.intent.category.DEFAULT"
I/PackageManager(  390):   Scheme: "mms"
I/PackageManager(  390): Adding preferred activity ComponentInfo{com.android.mms
/com.android.mms.ui.ComposeMessageActivity} for user 0 :
I/PackageManager(  390):   Action: "android.intent.action.SENDTO"
I/PackageManager(  390):   Category: "android.intent.category.DEFAULT"
I/PackageManager(  390):   Scheme: "mmsto"
I/PackageManager(  390): Adding preferred activity ComponentInfo{com.android.mms
/com.android.mms.ui.ComposeMessageActivity} for user 0 :
W/PackageManager(  390): Attempt to delete unknown system package com.android.ve
nding
W/PackageManager(  390): Attempt to delete unknown system package com.android.ve
nding
W/PackageManager(  390): Attempt to delete unknown system package com.google.and
roid.gms

C:adt-bundle-windows-x86_64-20130729sdkplatform-tools>

What am I supposed to make of this?

解决方案

I found the solution on the page How to install Google Maps v2 in Android Emulator.

It only works with Android 4.22, but I think that the same idea can be applied to version 4.4 with the appropriate files.

  1. Download the three files listed on the previous page: com.android.vending-19032013.apk, com.google.android.gms-19032013.apk and Google play services lib r5.

  2. Create an AVD device with a normal target (Android 4.22, API 17), with Intel Atom (x86) if you want to use.

  3. Install the two APK files from Android console.

  4. Create your app for Android 4.22

  5. DO NOT USE the google-play-services-lib of your system. You must use the third downloaded file.

这篇关于在模拟器中使用 Google 登录按钮时遇到问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆