googleplay

package module
v1.10.5 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2022 License: OSL-3.0 Imports: 13 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

Issues

During this time I am trying to support myself, so I am requiring payment for all issues. That might change at a later date. Any issue without payment of at least 19 USD will be closed immediately. Payment can be made to the PayPal link on this page, or if you want to use another method, mention that in the issue text. For business opportunities, contact me:

How to install?

This module works with Windows, macOS or Linux. 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

Before trying these examples, make sure the Google account you are using has logged into the Play Store at least once before. Also you need to have accepted the Google Play terms and conditions. Create a file containing token (aas_et) for future requests:

googleplay -email EMAIL -password PASSWORD

Create a file containing X-DFE-Device-ID (GSF ID) for future requests:

googleplay -device

Get app details:

> googleplay -a com.google.android.youtube
Title: YouTube
Creator: Google LLC
Upload Date: Jun 17, 2022
Version: 17.24.34
Version Code: 1529992640
Num Downloads: 12.038 B
Installation Size: 48.285 MB
File: APK APK APK APK
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 1529992640

API

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

Documentation

Index

Constants

View Source
const Sleep = 4 * time.Second

Variables

View Source
var Phone = Config{
	Device_Feature: []string{

		"android.hardware.location.gps",

		"android.software.midi",

		"android.hardware.camera.front",

		"android.hardware.microphone",

		"android.software.device_admin",

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

		"android.hardware.sensor.gyroscope",

		"android.hardware.sensor.accelerometer",

		"android.hardware.opengles.aep",

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

		"android.hardware.touchscreen.multitouch",

		"android.hardware.location.network",

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

		"android.hardware.sensor.compass",

		"android.hardware.telephony",

		"android.hardware.screen.landscape",
	},
	Shared_Library: []string{

		"org.apache.http.legacy",

		"android.test.runner",

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

	GL_ES_Version: 0x9_9999,
	GL_Extension: []string{

		"GL_OES_compressed_ETC1_RGB8_texture",

		"GL_KHR_texture_compression_astc_ldr",
	},
}
View Source
var Platforms = Native_Platform{

	0: "x86",

	1: "armeabi-v7a",

	2: "arm64-v8a",
}

Functions

This section is empty.

Types

type Auth added in v1.0.4

type Auth struct {
	url.Values
}

func New_Auth added in v1.10.2

func New_Auth(email, password string) (*Auth, error)

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

func (Auth) Create added in v1.10.2

func (a Auth) Create(name string) error

func (*Auth) Exchange added in v1.10.2

func (a *Auth) Exchange() error

func (Auth) Get_Auth added in v1.10.3

func (a Auth) Get_Auth() string

func (Auth) Get_Token added in v1.10.3

func (a Auth) Get_Token() string

type Config added in v1.2.1

type Config struct {
	Device_Feature      []string
	Five_Way_Navigation uint64
	GL_ES_Version       uint64
	GL_Extension        []string
	Hard_Keyboard       uint64
	Keyboard            uint64
	Navigation          uint64
	Screen_Density      uint64
	Screen_Layout       uint64
	Shared_Library      []string
	Touch_Screen        uint64
}

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

func (Config) Checkin added in v1.7.7

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

A Sleep is needed after this.

type Delivery added in v1.1.9

type Delivery struct {
	protobuf.Message
}

func (Delivery) Additional_File added in v1.9.9

func (d Delivery) Additional_File() []File_Metadata

func (Delivery) Download_URL added in v1.9.9

func (d Delivery) Download_URL() (string, error)

.downloadUrl

func (Delivery) Split_Data added in v1.9.9

func (d Delivery) Split_Data() []Split_Data

type Details added in v1.0.1

type Details struct {
	protobuf.Message
}

func (Details) Creator added in v1.8.9

func (d Details) Creator() (string, error)

should work with any ABI

func (Details) Currency_Code added in v1.9.9

func (d Details) Currency_Code() (string, error)

should work with any ABI

func (Details) File added in v1.9.5

func (d Details) File() []File_Metadata

will fail with wrong ABI

func (Details) Installation_Size added in v1.10.2

func (d Details) Installation_Size() (uint64, error)

will fail with wrong ABI

func (Details) MarshalText added in v1.10.2

func (d Details) MarshalText() ([]byte, error)

func (Details) Micros added in v1.5.0

func (d Details) Micros() (uint64, error)

should work with any ABI

func (Details) Num_Downloads added in v1.10.2

func (d Details) Num_Downloads() (uint64, error)

should work with any ABI

func (Details) Time added in v1.9.6

func (d Details) Time() (time.Time, error)

This only works with English. You can force English with: Accept-Language: en

func (Details) Title added in v1.4.3

func (d Details) Title() (string, error)

should work with any ABI

func (Details) Upload_Date added in v1.9.9

func (d Details) Upload_Date() (string, error)

func (Details) Version added in v1.9.9

func (d Details) Version() (string, error)

will fail with wrong ABI

func (Details) Version_Code added in v1.9.9

func (d Details) Version_Code() (uint64, error)

will fail with wrong ABI

type Device added in v1.0.6

type Device struct {
	protobuf.Message
}

func (Device) Create added in v1.5.6

func (d Device) Create(name string) error

func (Device) ID added in v1.9.9

func (d Device) ID() (uint64, error)

type File added in v1.8.6

type File struct {
	Package_Name string
	Version_Code uint64
}

func (File) APK added in v1.10.2

func (f File) APK(id string) string

func (File) OBB added in v1.10.2

func (f File) OBB(file_type uint64) string

type File_Metadata added in v1.9.9

type File_Metadata struct {
	protobuf.Message
}

func (File_Metadata) Download_URL added in v1.9.9

func (f File_Metadata) Download_URL() (string, error)

.downloadUrl

func (File_Metadata) File_Type added in v1.9.9

func (f File_Metadata) File_Type() (uint64, error)

.fileType

type Header struct {
	Auth   *Auth   // Authorization
	Device *Device // X-Dfe-Device-Id
	Single bool
}

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) Open_Auth added in v1.10.3

func (h *Header) Open_Auth(name string) error

func (*Header) Open_Device added in v1.10.3

func (h *Header) Open_Device(name string) 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.

func (Header) Set_Agent added in v1.9.9

func (h Header) Set_Agent(head http.Header)

func (Header) Set_Auth added in v1.9.9

func (h Header) Set_Auth(head http.Header)

func (Header) Set_Device added in v1.9.9

func (h Header) Set_Device(head http.Header) error

type Native_Platform added in v1.9.9

type Native_Platform map[int64]string

func (Native_Platform) String added in v1.9.9

func (n Native_Platform) String() string

type Split_Data added in v1.9.9

type Split_Data struct {
	protobuf.Message
}

func (Split_Data) Download_URL added in v1.9.9

func (s Split_Data) Download_URL() (string, error)

.downloadUrl

func (Split_Data) ID added in v1.9.9

func (s Split_Data) ID() (string, error)

.id

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

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