Сбой браузера эмулятора Android
Я пытаюсь использовать браузер в эмуляторе android sdk (mac), но он продолжает сбой после открытия. Пока я использую 4.4. Я даже не могу ввести URL-адрес. Есть ли какие-то журналы, которые я мог проверить, чтобы узнать, что случилось? Я пробовал это на двух машинах, оба имеют одну и ту же ошибку.
Здесь журнал инициализации:
emulator -avd AVD_for_Nexus_S_by_Google -debug-init
emulator: found SDK root at /usr/local/Cellar/android-sdk/22.3
emulator: Android virtual device file at: /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.ini
emulator: virtual device content at /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd
emulator: virtual device config file: /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/config.ini
emulator: using core hw config path: /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/hardware-qemu.ini
emulator: Found AVD target API level: 19
emulator: 'magic' skin format detected: 480x800
emulator: autoconfig: -skin 480x800
emulator: autoconfig: -skindir (null)
emulator: keyset loaded from: /Users/tobi/.android/default.keyset
emulator: found SDK root at /usr/local/Cellar/android-sdk/22.3
emulator: trying to load skin file '/usr/local/Cellar/android-sdk/22.3/tools/lib/emulator/skins/dynamic//layout'
emulator: loaded dynamic skin width=480 height=800 bpp=16
emulator: autoconfig: -kernel /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//system.img
emulator: autoconfig: -data /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/userdata-qemu.img
emulator: autoconfig: -initdata /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/userdata.img
emulator: autoconfig: -cache /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/cache.img
emulator: Physical RAM size: 343MB
Content of hardware configuration file:
hw.cpu.arch = arm
hw.cpu.model = cortex-a8
hw.ramSize = 343
hw.screen = touch
hw.mainKeys = yes
hw.trackBall = no
hw.keyboard = yes
hw.keyboard.lid = no
hw.keyboard.charmap = qwerty2
hw.dPad = no
hw.gsmModem = yes
hw.gps = yes
hw.battery = no
hw.accelerometer = yes
hw.audioInput = yes
hw.audioOutput = yes
hw.sdCard = yes
disk.cachePartition = yes
disk.cachePartition.path = /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/cache.img
disk.cachePartition.size = 66m
hw.lcd.width = 480
hw.lcd.height = 800
hw.lcd.depth = 16
hw.lcd.density = 240
hw.lcd.backlight = yes
hw.gpu.enabled = no
hw.camera.back = none
hw.camera.front = none
vm.heapSize = 32
hw.sensors.proximity = yes
hw.sensors.magnetic_field = yes
hw.sensors.orientation = yes
hw.sensors.temperature = yes
hw.useext4 = yes
kernel.path = /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//kernel-qemu
kernel.parameters = android.checkjni=1
disk.ramdisk.path = /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//ramdisk.img
disk.systemPartition.initPath = /usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//system.img
disk.systemPartition.size = 550m
disk.dataPartition.path = /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/userdata-qemu.img
disk.dataPartition.size = 200m
avd.name = AVD_for_Nexus_S_by_Google
.
QEMU options list:
emulator: argv[00] = "/usr/local/Cellar/android-sdk/22.3/tools/emulator64-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/hardware-qemu.ini"
Concatenated QEMU options:
/usr/local/Cellar/android-sdk/22.3/tools/emulator64-arm -android-hw /Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0x22600000,initfile=/usr/local/Cellar/android-sdk/22.3/system-images/android-19/armeabi-v7a//system.img,pagesize=512,extrasize=0
emulator: mapping 'system' NAND image to /tmp/android-tobi/emulator-lSd528
emulator: nand_add_dev: userdata,size=0xc800000,file=/Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/userdata-qemu.img,pagesize=512,extrasize=0
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '32m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'none'
emulator: nand_add_dev: cache,size=0x4200000,file=/Users/tobi/.android/avd/AVD_for_Nexus_S_by_Google.avd/cache.img,pagesize=512,extrasize=0
emulator: Initializing hardware OpenGLES emulation support
emulator: Kernel parameters: qemu.gles=0 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=1
emulator: Trace file name is not set
emulator: autoconfig: -scale 1
emulator: Could not open file: (null)/system/build.prop: No such file or directory
emulator: control console listening on port 5554, ADB on port 5555
emulator: sent '0012host:emulator:5555' to ADB server
emulator: ping program: /usr/local/Cellar/android-sdk/22.3/tools/ddms
emulator: ping command: /usr/local/Cellar/android-sdk/22.3/tools/ddms ping emulator 22.3.0 "Intel Inc." "Intel HD Graphics 5000 OpenGL Engine" "2.1 INTEL-8.18.26"
goldfish_fb_get_pixel_format:167: display surface,pixel format:
bits/pixel: 16
bytes/pixel: 2
depth: 16
red: bits=5 mask=0xf800 shift=11 max=0x1f
green: bits=6 mask=0x7e0 shift=5 max=0x3f
blue: bits=5 mask=0x1f shift=0 max=0x1f
alpha: bits=0 mask=0x0 shift=0 max=0x0
Ответы
Ответ 1
У меня возникла проблема с эмулятором Android 6.0 до тех пор, пока я не обновил разрешения для браузера, чтобы разрешить доступ к хранилищу, это решило проблему для меня.
в эмуляторе перейдите к: Настройки → Приложения → Браузер и выберите Разрешения, затем включите хранилище.
Ответ 2
Я решил эту проблему на AOSP, создав новую sdcard.img:
mksdcard 1G out/target/product/generic/sdcard.img
Затем запустите эмулятор с помощью
emulator -sdcard out/target/product/generic/sdcard.img
Для SDK попробуйте создать другую SD-карту вручную или через графический интерфейс.
Ответ 3
Я мог бы решить эту проблему, просто указав размер SD-карты для AVD
Ответ 4
Хорошо, после нескольких проблем с проблемой, и после попытки всех возможных решений, таких как установка DNS-серверов, нажав клавишу F8, моя проблема была решена путем создания файла SD-изображения на решение, данное пользователем1895218 выше. Я запускаю 32-битный Ubuntu 12.04 LTS.
Это было идентифицировано, посмотрев сообщение logcat ниже:
E/NativeDaemonConnector.ResponseQueue(364): ожидания ожидания ответа
E/VoldConnector (364): время ожидания ответа на 3 тома mkdirs/storage/sdcard/Android/data/com.android.browser/files/
D/AndroidRuntime (832): выключение виртуальной машины
W/dalvikvm (832): threadid = 1: выход из потока с неперехваченным исключением (group = 0xb1a47b90)
E/AndroidRuntime (832): FATAL EXCEPTION: main
E/AndroidRuntime (832): Процесс: com.android.browser, PID: 832
E/AndroidRuntime (832): java.lang.RuntimeException: невозможно получить провайдер com.android.browser.provider.SnapshotProvider: java.lang.NullPointerException
E/AndroidRuntime (832): at android.app.ActivityThread.installProvider(ActivityThread.java:4774)
E/AndroidRuntime (832): at android.app.ActivityThread.installContentProviders(ActivityThread.java:4366)
E/AndroidRuntime (832): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4306)
E/AndroidRuntime (832): at android.app.ActivityThread.access $1400 (ActivityThread.java:135)
E/AndroidRuntime (832): at android.app.ActivityThread $H.handleMessage(ActivityThread.java:1457)
E/AndroidRuntime (832): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime (832): на android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime (832): at android.app.ActivityThread.main(ActivityThread.java:4998)
E/AndroidRuntime (832): в java.lang.reflect.Method.invokeNative(собственный метод)
E/AndroidRuntime (832): в java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime (832): at com.android.internal.os.ZygoteInit $MethodAndArgsCaller.run(ZygoteInit.java:777)
E/AndroidRuntime (832): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
E/AndroidRuntime (832): в dalvik.system.NativeStart.main(собственный метод)
E/AndroidRuntime (832): вызвано: java.lang.NullPointerException
E/AndroidRuntime (832): at android.os.Parcel.readException(Parcel.java:1467)
E/AndroidRuntime (832): at android.os.Parcel.readException(Parcel.java:1415)
E/AndroidRuntime (832): на android.os.storage.IMountService $Stub $Proxy.mkdirs(IMountService.java:750)
E/AndroidRuntime (832): at android.app.ContextImpl.ensureDirsExistOrFilter(ContextImpl.java:2160)
E/AndroidRuntime (832): at android.app.ContextImpl.getExternalFilesDirs(ContextImpl.java:856)
E/AndroidRuntime (832): at android.app.ContextImpl.getExternalFilesDir(ContextImpl.java:839)
E/AndroidRuntime (832): at android.content.ContextWrapper.getExternalFilesDir(ContextWrapper.java:210)
E/AndroidRuntime (832): at com.android.browser.provider.SnapshotProvider.getOldDatabasePath(SnapshotProvider.java:116)
E/AndroidRuntime (832): at com.android.browser.provider.SnapshotProvider.migrateToDataFolder(SnapshotProvider.java:123)
E/AndroidRuntime (832): at com.android.browser.provider.SnapshotProvider.onCreate(SnapshotProvider.java:137)
E/AndroidRuntime (832): at android.content.ContentProvider.attachInfo(ContentProvider.java:1589)
E/AndroidRuntime (832): at android.content.ContentProvider.attachInfo(ContentProvider.java:1560)
E/AndroidRuntime (832): на android.app.ActivityThread.installProvider(ActivityThread.java:4771)
E/AndroidRuntime (832):... еще 12