Skip to content

trivalik/GooglePlayStoreApi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GooglePlayStoreApiNuGet

Install

Install as NuGet package

Install-Package GooglePlayStoreApi

.NET CLI

dotnet add package GooglePlayStoreApi

Usage

Get auth_token from this URL

Search

var email = "[email protected]";
var androidId = ""; // use your real GSF ID(Google Service Framework ID)
var token = "oauth2_4/...";

var client = new GooglePlayStoreClient(email, androidId);
token = await client.GetGoogleToken(token);
await client.GetGoogleAuth(token);

var searchResult = await client.Search("gmail");
foreach (var appDetail in searchResult.PreFetch[0].Response.Payload.ListResponse.Item[0].SubItem.Select(x => x.SubItem[0]))
{
  var appId = appDetail.Id;
  var appName = appDetail.Title;

  Console.WriteLine($"{appId},{appName}");
}

AppDetail

var email = "[email protected]";
var androidId = ""; // use your real GSF ID(Google Service Framework ID)
var token = "oauth2_4/...";
var gmailPackageName = "com.google.android.gm";

var client = new GooglePlayStoreClient(email, androidId);
token = await client.GetGoogleToken(token);
await client.GetGoogleAuth(token);

var appDetail = await client.AppDetail(gmailPackageName);
var appName = appDetail.Item.Title;
var descriptionHtml = appDetail.Item.DescriptionHtml;
var versionCode = appDetail.Item.Details.AppDetails.VersionCode;
var versionString = appDetail.Item.Details.AppDetails.VersionString;
var permissions = appDetail.Item.Details.AppDetails.Permission;
var offerType = appDetail.Item.Offer[0].OfferType;

Download APK

var email = "[email protected]";
var androidId = ""; // use your real GSF ID(Google Service Framework ID)
var token = "oauth2_4/...";
var gmailPackageName = "com.google.android.gm";

var client = new GooglePlayStoreClient(email, androidId);
token = await client.GetGoogleToken(token);
await client.GetGoogleAuth(token);

var appDetail = await GetAppDetail(client, gmailPackageName);
var versionCode = appDetail.Item.Details.AppDetails.VersionCode;
var offerType = appDetail.Item.Offer[0].OfferType;

await client.Purchase(gmailPackageName, offerType, versionCode);
var bytes = await client.DownloadApk(gmailPackageName);
File.WriteAllBytes("Gmail.apk", bytes);

First time login

var token = "oauth2_4/...";
token = await client.GetGoogleToken(token);
// save token to "token.txt"
File.WriteAllText("token.txt", token);
await client.GetGoogleAuth(token);

After the second time login

// load token from "token.txt"
var token = File.ReadAllText("token.txt");
await client.GetGoogleAuth(token);

Related projects

About

Google Play Store API for .NET(unofficial)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%