googleplay

package module
v1.9.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2022 License: OSL-3.0 Imports: 12 Imported by: 2

README

GooglePlay

Fear plays an interesting role in our lives. How dare we let it motivate us? How dare we let it into our decision-making, into our livelihoods, into our relationships?

It's funny, isn't it, we take a day a year to dress up in costume and celebrate fear?

Spooked (The Office) (2011)

Download APK from Google Play or send API requests

How to install?

This module works with Windows, macOS or Linux. You can download, build and run in less than one minute.

First, download Go and extract archive. Then download GooglePlay and extract archive. Then navigate to googleplay-master/cmd/googleplay, and enter:

go build

Tool examples

If you are outside the United States, you might need to create an App Password. Create a file containing token (aas_et) for future requests:

googleplay -e EMAIL -p PASSWORD

Create a file containing Android_ID (GSF ID) for future requests:

googleplay -d

Get app details:

PS C:\> googleplay -a com.google.android.youtube
Title: YouTube
Creator: Google LLC
UploadDate: Mar 16, 2022
VersionString: 17.11.34
VersionCode: 1528288704
NumDownloads: 11.562 B
Size: 40.935 MB
Files: 4
Offer: 0 USD

Purchase app. Only needs to be done once per Google account:

googleplay -a com.google.android.youtube -purchase

Download APK. You need to specify any valid version code. The latest code is provided by the previous details command. If APK is split, all pieces will be downloaded:

googleplay -a com.google.android.youtube -v 1528288704

API

https://github.com/89z/googleplay

Documentation

Index

Constants

View Source
const Sleep = 4 * time.Second

Variables

View Source
var LogLevel format.LogLevel
View Source
var Phone = Config{
	DeviceFeature: []String{

		"android.software.device_admin",

		"android.hardware.sensor.gyroscope",
		"android.hardware.vr.high_performance",
		"android.software.vr.mode",

		"android.hardware.touchscreen",
		"android.hardware.wifi",

		"android.hardware.camera",
		"android.hardware.location",
		"android.hardware.screen.portrait",

		"android.hardware.location.gps",
		"android.hardware.sensor.accelerometer",

		"android.hardware.touchscreen.multitouch",
		"android.hardware.touchscreen.multitouch.distinct",
		"android.hardware.vulkan.level",
		"android.hardware.vulkan.version",

		"android.hardware.screen.landscape",

		"android.hardware.microphone",

		"android.hardware.bluetooth",
		"android.hardware.bluetooth_le",
		"android.hardware.camera.autofocus",
		"android.hardware.usb.host",

		"android.hardware.telephony",

		"android.hardware.location.network",
	},

	GLESversion: 0x0003_0001,

	GLextension: "GL_OES_compressed_ETC1_RGB8_texture",
	NativePlatform: []String{

		"x86",

		"armeabi-v7a",

		"arm64-v8a",
	},
	SystemSharedLibrary: []String{

		"global-miui11-empty.jar",
	},

	TouchScreen: 3,
}
View Source
var TV = Config{
	DeviceFeature: []String{

		"android.hardware.type.television",
		"com.google.android.tv",

		"android.hardware.screen.landscape",
		"android.software.leanback",

		"android.hardware.wifi",
	},

	GLESversion: 0x20000,
	NativePlatform: []String{

		"x86",

		"armeabi-v7a",
	},
}
View Source
var Tablet = Config{
	DeviceFeature: []String{
		"org.chromium.arc",
		"android.hardware.touchscreen",
	},
}

com.google.android.apps.youtube.music.pwa

Functions

This section is empty.

Types

type Config added in v1.2.1

type Config struct {
	DeviceFeature        []String
	GLESversion          Varint
	GLextension          String
	HasFiveWayNavigation Varint
	HasHardKeyboard      Varint
	Keyboard             Varint
	NativePlatform       []String
	Navigation           Varint
	ScreenDensity        Varint
	ScreenLayout         Varint
	SystemSharedLibrary  []String
	TouchScreen          Varint
}

These can use default values, but they must all be included

func (Config) Checkin added in v1.7.7

func (c Config) Checkin() (*Device, error)

A Sleep is needed after this.

type Delivery added in v1.1.9

type Delivery struct {
	DownloadURL       String
	SplitDeliveryData []SplitDeliveryData
}

func (Delivery) Data added in v1.8.7

func (d Delivery) Data() []SplitDeliveryData

type Details added in v1.0.1

type Details struct {
	Title         String
	Creator       String
	UploadDate    String
	VersionString String
	VersionCode   Varint
	NumDownloads  Varint
	Size          Varint
	Files         int
	Micros        Varint
	CurrencyCode  String
}

func (Details) Format added in v1.8.2

func (d Details) Format(f fmt.State, verb rune)

type Device added in v1.0.6

type Device struct {
	AndroidID Fixed64
	TimeMsec  Varint
}

func OpenDevice added in v1.5.6

func OpenDevice(elem ...string) (*Device, error)

func (Device) Create added in v1.5.6

func (d Device) Create(elem ...string) error

type Fixed64 added in v1.8.7

type Fixed64 = protobuf.Fixed64
type Header struct {
	http.Header
}

func (Header) Delivery added in v1.6.8

func (h Header) Delivery(app string, ver uint64) (*Delivery, error)

func (Header) Details added in v1.6.8

func (h Header) Details(app string) (*Details, error)

func (Header) Purchase added in v1.6.8

func (h Header) Purchase(app string) error

Purchase app. Only needs to be done once per Google account.

type Message added in v1.8.7

type Message = protobuf.Message

type SplitDeliveryData added in v1.3.0

type SplitDeliveryData struct {
	ID          String
	DownloadURL String
}

func (SplitDeliveryData) Name added in v1.3.0

func (s SplitDeliveryData) Name(app string, ver uint64) string

type String added in v1.8.7

type String = protobuf.String

type Token added in v1.0.1

type Token struct {
	Services string
	Token    string
}

func NewToken added in v1.0.4

func NewToken(email, password string) (*Token, error)

You can also use host "android.clients.google.com", but it also uses TLS fingerprinting.

func OpenToken added in v1.5.6

func OpenToken(elem ...string) (*Token, error)

func (Token) Create added in v1.5.6

func (t Token) Create(elem ...string) error

func (Token) Header added in v1.7.6

func (t Token) Header(dev *Device) (*Header, error)

func (Token) SingleAPK added in v1.7.6

func (t Token) SingleAPK(dev *Device) (*Header, error)

type Varint added in v1.8.7

type Varint = protobuf.Varint

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL