Android 4.0エミュレータ上のGoogle Play


184

Android 4.0エミュレーターにGoogle Play .apkをインストールするにはどうすればよいですか?


1
注:コメントの結果はまちまちなので、走行距離は異なる場合があります
amb

しかし、他のエミュレーターのバージョンと同じであり、そこで機能したので、なぜ4.xで機能しないのですか?:)
reox

回答:


259

ここ
からGoogleアプリ(GoogleLoginService.apk、GoogleServicesFramework.apk、Phonesky.apk)をダウンロードします

エミュレータを起動します。

emulator -avd VM_NAME_HERE -partition-size 500 -no-audio -no-boot-anim

次に、次のコマンドを使用します。

# Remount in rw mode.
# NOTE: more recent system.img files are ext4, not yaffs2
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system

# Allow writing to app directory on system partition
adb shell chmod 777 /system/app

# Install following apk
adb push GoogleLoginService.apk /system/app/.
adb push GoogleServicesFramework.apk /system/app/.
adb push Phonesky.apk /system/app/. # Vending.apk in older versions
adb shell rm /system/app/SdkSetup*

21
注:最新のリリースでは、Vending.apkはPhonesky.apkと呼ばれています
Catalin

9
URLが壊れています:(
TheDude 2013

16
-partitionサイズの paramが、それなしで、私はのAPKを押しながらのOutOfMemory例外だ、重要である
マイク

12
この答えは受け入れられるべき答えだと思います。結局のところ、これは実際の回答です。現在受け入れられている回答(2013年11月11日)は、「エウラを壊すことは悪いことのようです」コメントのタイプ。
chris-l

4
これを機能させることができないのは私だけですか?4.4と5.0の両方のエミュレータで、APKを追加してもPlayストアアイコンは表示されず、adb rebootハングするだけです。
2015

85

将来の訪問者のために。

現在、Android 4.2.2プラットフォームにはGoogle Play開発者サービスが含まれています。Jelly Beanを実行するエミュレータを使用するだけです。詳細はここにあります:

Google Play Services SDKを設定する

編集:

別のオプションは、Genymotionを使用することです(より高速に実行されます)。

編集2:

@ gdw2がコメントしたように、「Google Play開発者サービスSDKをセットアップしても、機能するGoogle Playアプリはインストールされません。SDKが提供する特定のサービスが有効になるだけです。」

バージョン2.0以降、GenymotionにはデフォルトでPlay Servicesが付属していませんが、手動で簡単にインストールできます。ここから適切なバージョンをダウンロードして、仮想デバイス(エムラドール)にドラッグアンドドロップするだけです。


1
@quinestorはい、それはありません
Androiderson

6
聖母!Genymotionは素晴らしいです!
ロスハンブリック2013

6
@ Exception-al回答を更新して、Google Play開発者サービスSDKを設定しても、機能するGoogle Playアプリがインストールされないことを明確にする必要があります。SDKが提供する特定のサービスを有効にするだけです。
gdw2 2013年

1
Genymotionを提案するための+1 !!! それが存在することを知らなかったし、今ではそれなしでは生きられない。Android Studioで問題なく動作し(プラグインを追加するだけ)、「実際の」デバイスに頼ることなく、Google Maps V2アプリをデビューできるようになりました。どうもありがとう!
Loudenvier 2013年

1
@SeanChamp良い点ですが、最終テストは常に実際のデバイスで行う必要があります
Androiderson

27

私はより永続的な方法でこれを行います-でAPKを毎回インストールする代わりにadb、エミュレータが使用するシステムイメージにAPKを永続的に追加します。YAFFS2イメージを変更するには、WindowsではYaffey、または他のシステムでは同様のユーティリティが必要です。コピーGoogleLoginService.apkGoogleServicesFramework.apkおよびPhonesky.apk(またはVending.apkAndroidの以前のバージョンで)へ/system/appのフォルダsystem.imgエミュレータのファイル。その後、adbをいじることなく、エミュレータを通常どおり起動できます。Playストアは常にそこにあります。

デバイスからGoogle Playアプリを取得する

一部のインターネットサイトからGoogle Appsをダウンロードすることは完全に合法ではない可能性がありますが、対応するAndroidバージョンを備えた携帯電話またはタブレットを使用している場合は、デバイスから取り出してください。

adb -d root
adb -d pull /system/app/GoogleLoginService.apk
adb -d pull /system/app/GoogleServicesFramework.apk
adb -d pull /system/app/Phonesky.apk

あなたは持っている必要があり、ルートレベルのアクセスそれから、これらのファイルをプルするために、デバイスに(実行ADBのルートを)。

画像に追加する

次にyaffey、WindowsまたはLinuxまたはMacの同様のユーティリティをsystem.img起動し、変更するエミュレータイメージを開きます。私はほとんどの場合、の1つを変更し[...]\android-sdk\system-images\android-17\x86ます。

オリジナルの名前をに変更system.imgsystem-original.imgます。yaffeyの下で、デバイスからプルしたAPKファイルを/ appフォルダーにコピーします。変更した画像をsystem.img元のフォルダーと同じように保存します。次に、エミュレータを起動します(私の場合は、Intel AAXプロセッサを搭載したAndroid 4.2エミュレータで、Windowsマシンでは超高速です)。そこにPlayストアがあります。私はそれが必要削除する見つけることができませんでしたSdkSetup.apkし、SdkSetup.odex-これらのファイルと私のためのPlayストア、まだ他のサービスの作業罰金が存在します。

テストが終了したら、デバイスからGoogle Appsを一時的に著作権侵害する罪悪感を軽減するために、変更されたものsystem.imgを削除し、元のファイルをから復元できますsystem-original.img


5
Linux用のYAFF2エディターは機能していないようですが、幸いなことに、1行の変更で、Yaffey自体がLinuxでコンパイルおよび実行されることがわかりました。このAsk Ubuntuの質問で使用した手順を投稿しました。
カタツムリ

+ 1sがあまりにも少ないAHA-モーメント幸福のため..ですStackOverflowのキス-COS-UR-SO-幸せボタン:)が必要です
アビシェークSusarla

ルートなしでAndroid 4.1.2スマートフォンから3つのAPKをプルすることができましたが、それらを他の場所にインストールする作業を続けています。
bonh 2014

Macのためのyaffeyの代替品はありますか?
OlcayErtaş2015

1
@OlcayErtaşMac Yaffey:github.com/danielkutik/yaffey。Yaffey.appをビルドし、私のヨセミテで完全に動作します。
Xiao

4
  1. gappsパッケージをhttp://goo.im/gappsからダウンロードします。
  2. GoogleLoginService.apk、GoogleServicesFramework.apkおよびVending.apkを抽出します。 adb shell
    1. シェルタイプ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
    2. 次に、Ctrl + cを押して終了します。apksが抽出されたディレクトリにcdします。
    3. タイプ adb push <appname>.apk /system/app
    4. 次に入力 adb reboot

.apkファイルを配置する必要がある場所。
Steve

PATH環境変数を設定していない限り、それをplatform-toolsにコピーします
insomniac

1
アクセス拒否。
Sanyam Jain 2016

@SanyamJainその問題​​を解決しましたか?同じメッセージが表示されます、マウント:アクセスが拒否されました
Joshua Son

@JoshuaSon:いいえ、できませんでした。そして、さまざまなソースから読んだ後、エミュレータがクラッシュし続けるか、この戦略がAndroidの今後のバージョンでは機能しないため、努力する価値がないかもしれないと結論に達しました。私が間違っている場合は訂正してください:)
Sanyam Jain

2

Android 4.0の携帯電話からダウンロードし、システムイメージrwをマウントしてコピーすることができます。

以前は試しませんでしたが、動作するはずです。


いいえ、GAPPSのzipは大きすぎます。
IgorGanapolsky

2

それは私にとって簡単です私は自分のコンピューターにapkファイルをダウンロードし、そのファイルをエミュレーターにドラッグして、それが私のためにgoogle playをインストールします


0

LinuxでのPlaystore + Google Play Services(Ubuntu 14.04)


Googleアプリをダウンロード(GoogleLoginService.apk、GoogleServicesFramework.apk)

ここからhttp://www.securitylearn.net/2013/08/31/google-play-store-on-android-emulator/

ここからダウンロード(Phonesky.apk)https://basketbuild.com/filedl/devs?dev=dankoman&dl=dankoman/Phonesky.apk

ANDROID SDKの場所に移動>>

cd -Android SDKのツールの場所-

エミュレータを実行するには>>

Android / Sdk / tools $ ./emulator64-x86 -avd Kitkat -partition-size 566 -no-audio -no-boot-anim

権限を設定>>

cd Android / Sdk / platform-tools platform-tools $ adb shell mount -o remount、rw -t yaffs2 / dev / block / mtdblock0 / system

platform-tools $ adb shell chmod 777 / system / app

platform-tools $ adb push /home/nazmul/Downloads/GoogleLoginService.apk / system / app /。

プッシュプレイAPK >>

platform-tools $ adb push /home/nazmul/Downloads/GoogleServicesFramework.apk / system / app /。platform-tools $ adb push /home/nazmul/Downloads/Phonesky.apk / system / app /。platform-tools $ adb shell rm / system / app / SdkSetup *


システムにGAPPSをインストールするための十分なスペースがありません。
IgorGanapolsky

-1

Genymotionを試したことはありますか?私は先週それについて読みました、そしてそれは素晴らしいです。彼らはあなたが実行するいくつかのAndroid画像を持っています(独自のソフトウェアで)。画像は非常に高速で、Google Playがインストールされています。それがあなたが必要としている種類のものであるかどうかそれをチェックしてください。

http://www.genymotion.com/


genymotionは、APIレベルが16未満のVMを提供しません
martyglaubitz 2015年

Genymotionについてのコメントとして、任意の読者へのアドバイスとして:GenymotionはVirtualBox Virtualizationプラットフォームを使用しています。VIrtualBoxは、Intelマイクロコントローラープラットフォームをエミュレートするように設計されています。この制限により、ARMマイクロコントローラープラットフォームをGenymotionでエミュレートできない場合があります。もちろん、これは、可能性のあるすべてのマイクロコノローラーまたはマイクロコントローラーエミュレーターで、クロスプラットフォームSDKを使用してアプリをベータテストする必要があるかどうか、いつ、どのような理由で直交する質問を導入するのに役立ちます。Intel-virtの制限は、すべてのアプリではなく、それほど懸念事項ではない可能性がありますか?
Sean Champ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.