@efffrida/gplayapapi (英语)
非官方 Google Play Store API 直接从 Google 下载APK 游戏商店.
商店的原生取出端点暴露为效果: details 财务报告和审定财务报表
bulkDetails 用于应用元数据, purchase 财务报告和审定财务报表 delivery 用于获取
下载标志,和 downloadToStreams 财务报告和审定财务报表 downloadToDisk 为拉倒
aPK 及其分拆和扩展文件.
示例用途
import { Effect, Layer } from "effect";
import { NodeHttpClient, NodeServices } from "@effect/platform-node";
import { AndroidDevice, GooglePlayApi, PlayAccount } from "@efffrida/gplayapi";
const PlayLive = Layer.mergeAll(
AndroidDevice.layerEmbeddedPixel7a,
NodeHttpClient.layerUndici,
PlayAccount.layerConfig()
).pipe(Layer.provideMerge(NodeServices.layer));
const program = Effect.gen(function* () {
const { item } = yield* GooglePlayApi.details("com.nimblebit.tinytower");
yield* Effect.log(`${item?.title} ${item?.details?.appDetails?.versionString}`);
const files = yield* GooglePlayApi.downloadToDisk("com.nimblebit.tinytower");
// ...
}).pipe(Effect.scoped, Effect.provide(PlayLive));
服务
三事须供.
设备,决定商店看到的硬件指纹
因而创造它. AndroidDevice.layerEmbeddedPixel7a 船舶
使用软件包; 其他设备可以使用Aurora商店样式构建
属性文件为 AndroidDevice.fromPropertiesFile。 。 。 .
一个 HttpClient,无论哪个平台包适合运行时间.
A 类 PlayAccount,它决定了谷歌如何播放证书.
没有默认,所以选择其中之一:
layerAuroraDispenser(url?)交出奥罗拉的匿名证 存储相容的放送器,https://auroraoss.com/api/auth默认。 这个 托管一个块和速率限制数据中心 ip 范围, 因此它不适合 对于任何运行在云基础设施.layerConfig({token?})校对:soup 配置提供者,默认为GPLAY_AUTH_TOKEN环境 变量.layerStatic(credentials)提供已经持有的全权证书.
设备从自己和账户中获取认证信头,然后缓存 他们30分钟。 401或403从店里赶走他们 所以.. 下一次呼叫会获得一个新组合。 运输故障、超时和408,429,500, 502,503和504回應被以回放方式再作回放.
downloadToDisk 将每个文件写入范围化的临时文件,并检查其
当它流出时完整性, 所以当周围的文件被删除
Scope 关闭。 复制或移动到别处 如果需要超过寿命
这个.