V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
mylovelyapp
V2EX  ›  分享创造

征集一些测试用户, web 下载 Appstore 历史版本,网页下载安装正版任意国家 app

  •  
  •   mylovelyapp · 146 天前 · 3108 次点击
    这是一个创建于 146 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一些话

    这个项目我想了很久,主要因为工作原因以及前端技能不熟练,一直拖到现在。这次发布的版本还有很多 bug ,但我希望通过发布后获得的反馈来提升动力。由于我一个人负责了前后端开发以及 App Store 接口的分析,所以可能会存在不少问题。

    目前打算小范围邀请一些人进行测试,因为 IPA 包托管在自己的 CDN 上,流量无法掌控,因此不敢让太多人测试。未来会开放使用自有网盘的功能,并计划大规模开放测试。同时,我也计划开源部分代码,并开放 API ,方便公司进行测试部署、自家产品测试以及竞品分析。

    由于我并不擅长前端开发,可能会存在不少 bug ,请多多包涵。

    前端主要在适配手机端。pc 没有适配,未来想做成 pwn 应用。

    目前功能

    1. 允许购买任何历史版本,方便测试历史产品并对比竞品。
    2. 支持同时管理多个国家的 Apple ID ,方便出海产品测试。

    使用流程

    1. 使用邀请码注册:访问 https://dogebless.me

    2. 申请一个免费的美国 Apple ID

      申请免费美国 Apple ID

    3. 在 App Store 登录这个 ID ,并下载任意一个 App 以设备存储该 ID 信息,注意不要点击升级双重认证:

      在 App Store 登录 ID 在 App Store 登录 ID

    4. 退出这个 ID ,并搜索想要下载的 App,只能下载免费的应用,付费购买会失败:

      dogestore 搜索安装

    5. 购买想要的版本,然后在订单页查看状态,等待 1-5 分钟后点击安装,会进行 Adhoc 安装:

      点击安装进行 Adhoc 安装

    6. 去桌面查看并运行

    关于 Apple ID

    目前只支持非双重认证的 Apple ID 。未来版本会支持双重认证。初期,我高价购买了一些 1 年以上存活的 Apple ID ,免费提供给大家使用。建议拿到后先修改邮箱密码,Apple ID 密码不要修改,当然如果不打算用这个平台就随意。后续会允许用户使用自己的 ID 购买,并确保安全。Apple ID 登录过程使用了 SRP 算法,简单来说,登录过程中无需传入密码。我将会在前端实现这个功能并开源,后台只会接收购买的 token ,以确保不会保存用户密码。

    重要使用事项

    1. 现在不支持双重认证,初次登录 App Store 时会提示升级双重认证,请选择不升级。

    不要在设置里登录 Apple ID

    最重要的事情说三遍:不要在设置里登录平台的 Apple ID ,不要在设置里登录平台的 Apple ID ,不要在设置里登录平台的 Apple ID 。只在 App Store 里登录你的 ID ,否则手机被锁,不承担任何责任。(设置中登录会登录 iCloud ,如果账户泄露,可能会被利用锁定设备。App Store 只是其中一个应用,单独登录不会有问题。) 搞明白这个在来使用!

    原理

    我后台使用一些开源库,模拟苹果购买过程,控制购买版本号,下载历史版本。服务器会合成对应 IPA 文件,然后使用 Adhoc 安装或直接下载 IPA 。这样不会闪退,因为这些应用本身就是 App Store 上的应用。类似于账号分享,需要用户使用该 Apple ID 登录一次 App Store 并进行一次下载,这样设备保存了该 Apple ID 的授权信息。之后可以退出该 ID ,正常使用网页下载运行。

    后期开发计划

    在产品完善之前不会收费,但会接受捐赠。

    1. 增加用户设置网盘,这样不再使用我服务器的 CDN 流量,能提供更多服务。
    2. 增加双重认证支持。
    3. 增加用户使用自己 ID 的功能,开源相关前端 JS 代码用于 SRP 算法,不会获得用户密码。
    4. 稳定后会开源部分代码,并考虑开放 API ,这意味着你可以在小程序里实现一个 App Store 。

    参与测试的规则协议

    1. 使用者非大陆用户。
    2. 不能下载恶意违法 APP 。
    3. 希望测试用户了解一些 Apple 相关知识,如使用过程中造成的后果由用户自己承担。
    4. 希望用户多提出意见,例如功能、产品、UI 、法务、定价等。
    5. 测试中分发的 Apple ID 归用户任意处置。

    参与方法:回复包含“我同意测试规则协议”,并留下 base64 编码的邮箱,我会在 24 小时内发送邀请码。初期会接纳 50 名用户,因为后台前端开发不是我的强项,我是业余写的。

    联系方式

    电子邮件 [email protected],如果您想提前体验这个不完整版本,也可以发邮件给我。

    如果您对这个项目感兴趣,有任何想法疑问,也可以通过邮件与我联系。

    Q & A

    1. 为什么不要在设置里登录 Apple ID:设置中登录会登录 iCloud ,如果账号泄露,黑客可能远程锁定设备。此外,平台使用的账号也是第三方购买的,可能会出现未激活的情况,因此不建议登录 iCloud 。虽然本平台不会主动泄露,但以防万一。

    2. 原理是什么:基础原理类似于账号分享,平台后台使用该账户下载并合成最终 IPA 文件,可以指定安装版本,下载安装历史版本。

    3. 为什么有些应用没有历史版本:历史版本 ID 必须购买一次才能获得。因此,想下载历史版本,可以先购买一次最新版本。

    4. 只登录 App Store 是否有危险:App Store 只是 Apple ID 下的一个应用,单独在 App Store 应用里登录不会造成影响。

    5. 下载应用签名是否会过期:这是模拟下载 App Store 里的 IPA 文件,所以签名是 App Store 官方的,不会出现掉签情况。

    6. 为什么会闪退,怎么处理闪退:原理类似于共享账号,只不过这是你独享的。闪退大概率是因为设备的 App Store 没有登录下载过该 Apple ID 的应用。只要下载一次,设备会保存 Apple ID 相关的信息。

    7. 是否支持付费应用,是否支持应用内购买:提供的账户不包含支付功能,因此暂时不支持付费应用。未来可能会添加此功能。应用内购买在 Adhoc 安装下无法使用。如果需要测试公司内购,可以使用 PC 安装,例如 mobiledevicelib 等开源库。

    8. 特别久远历史版本系统无法运行:由于苹果在特定时间更新了签名方式,特别古老的版本,大约在 14.4 系统后无法运行,这是无法解决的。

    9. 是否可以在 iPad 上安装:暂时未测试过,但可以尝试在 iPad 上强行安装 IPA 文件,未来会研究此事,理论上应该可以在 iPad 上运行 WhatsApp 。

    49 条回复    2024-08-14 14:42:24 +08:00
    chanChristin
        1
    chanChristin  
       146 天前 via iPhone
    我同意测试规则协议

    bGVleEBmYXN0bWFpbC5jb20=
    Rollup
        2
    Rollup  
       146 天前
    希望试用一下, 我同意测试规则协议 ZmtudHN1QG91dGxvb2suY29t
    ox18
        3
    ox18  
       146 天前
    我同意测试规则协
    aGloaTQyN0BnbWFpbC5jb20=
    BSH
        4
    BSH  
       146 天前
    我同意测试规则协议
    Z2VvcmdlY25wY0BnbWFpbC5jb20=
    EmpCold
        5
    EmpCold  
       146 天前
    我同意测试规则协议 NzYzNTE3Njg3QHFxLmNvbQ==
    sun522198558
        6
    sun522198558  
       146 天前
    我同意测试规则协议
    bGVhcm5pbmdfZ29AMTYzLmNvbQ==
    mylovelyapp
        7
    mylovelyapp  
    OP
       146 天前
    @chanChristin
    @Rollup
    @ox18
    @BSH
    @EmpCold
    @sun522198558
    请查收邮件,感谢!!
    FormatToday
        8
    FormatToday  
       146 天前
    我同意测试规则协议
    YXBwQHpoYW5ncWluNTYuY24=
    aonco33
        9
    aonco33  
       146 天前 via iPhone
    同意测试规则协议。
    aonco33
        10
    aonco33  
       146 天前 via iPhone
    同意测试规则协议。[email protected]
    Lynntox
        11
    Lynntox  
       146 天前
    我同意测试规则协议, bGlubW8yNjVAZ21haWwuY29t
    MackMa
        12
    MackMa  
       146 天前
    我同意测试规则协议,bWFja21hMTk5OUBvdXRsb29rLmNvbQ==
    g0blin
        13
    g0blin  
       146 天前
    我同意测试规则协议 NzQyMDA1NzkwJTQwcXEuY29t
    Rookie01
        14
    Rookie01  
       146 天前
    我同意测试规则协议 cm9va2llOTYyN0BnbWFpbC5jb20=
    mylovelyapp
        15
    mylovelyapp  
    OP
       146 天前
    jswxg
        16
    jswxg  
       146 天前
    我同意测试规则协议 eGlhb2dhbmcwNEAxNjMuY29t
    EmpCold
        17
    EmpCold  
       146 天前
    @mylovelyapp #7 感谢!已注册体验~
    tiiis
        18
    tiiis  
       146 天前
    我同意测试规则协议 eWFzb24lNDBtc24uY29t
    48odaerina
        19
    48odaerina  
       146 天前
    我同意测试规则协议 OWNzcTdxZjg0QG1vem1haWwuY29t
    xiaoxt
        20
    xiaoxt  
       146 天前
    我同意测试规则协议 eGlhb2ZlbmcueHRAZ21haWwuY29t
    SteveRogers
        21
    SteveRogers  
       146 天前 via iPhone
    我同意测试规则协议
    aGVsbG9ib25kQGZveG1haWwuY29t
    imsgj
        22
    imsgj  
       146 天前
    我同意测试规则协议
    bmljZXNnakBnbWFpbC5jb20=
    zhijiansha
        23
    zhijiansha  
       146 天前
    我同意测试规则协议
    dXl6cUBxcS5jb20=
    bienyur
        24
    bienyur  
       145 天前
    我同意测试规则协议 Ymllbnl1ckAxNjMuY29t
    Lamlam147
        25
    Lamlam147  
       145 天前
    我同意测试规则协议 TEVWSUFUSEFOUy0=
    Lamlam147
        26
    Lamlam147  
       145 天前
    上一条发错了,请忽略。这调才是正确的我同意测试规则协议
    eXptaXJhbkBvdXRsb29rLmNvbQ==
    @Lamlam147
    mylovelyapp
        27
    mylovelyapp  
    OP
       145 天前
    LemonNoCry
        28
    LemonNoCry  
       145 天前
    我同意测试规则协议
    a2FuYV9maWxlMDlAaWNsb3VkLmNvbQ==
    bjhhhhhh
        29
    bjhhhhhh  
       145 天前
    我同意测试规则协议
    Yml0YWk5OTA5QGdtYWlsLmNvbQ==
    mylovelyapp
        30
    mylovelyapp  
    OP
       145 天前
    @EmpCold 感谢,之后会把搜索,购买等接口开放,可以方便 开发者在任何地方实现一个 appstore
    utyyyreee
        31
    utyyyreee  
       145 天前
    我同意测试规则协议 c3dpZnRudWxsQGdtYWlsLmNvbQ==
    aonco33
        32
    aonco33  
       145 天前 via iPhone
    asspppro 可以看看参考一下
    mylovelyapp
        33
    mylovelyapp  
    OP
       145 天前
    @aonco33 感谢,我去参考下,我这个主要给不想安装巨魔,也不想 pc 在现在 itune 一套或者助手 用户用。只需要网页就可以下载,后期把苹果登陆用 js 实现,后端只需要提供一个关键算法,就可以做到不获得用户密码情况下,让用户安全得用自己账户下载。
    Herong
        34
    Herong  
       145 天前
    我同意测试规则协议
    aGVyb25nMGhlcm9AZ21haWwuY29t
    mylovelyapp
        35
    mylovelyapp  
    OP
       145 天前
    hellsakura
        36
    hellsakura  
       145 天前
    我同意测试规则协议
    aGVsbHNha3VyYUBob3RtYWlsLmNvbQ==
    ellermister
        37
    ellermister  
       145 天前 via Android
    下载任意国家 APP.,本质上是用那个国家的的 ID 去下载,并不是自己国家区的 ID 下?

    这个机智利用或缓存了目标账号的授权,然后即使用自己国家的 ID 保持登录状态,也能通过那个已经退出的 ID 进行下载?我理解对吗?😨
    yanhuijun1996
        38
    yanhuijun1996  
       145 天前 via iPhone
    我同意测试规则协议

    amluZ3poZTYwN0BvdXRsb29rLmNvbQ==
    mylovelyapp
        39
    mylovelyapp  
    OP
       145 天前
    @ellermister 是的,或者叫做,多账户管理? 就是缓存一次目标账户授权,之后就可以退出这个 id ,我后台模拟下载合成 ipa 通过 adhoc 安装。自己 appstore 可以登陆自己主账户,下载其他国家 app 不需要切换了。 在这个基础上还可以下载任意历史版本,暂时还没测试是否可以 ipad 直接安装 ios 系统的 ipa ,感觉架构差不多,做一些修改可以。
    现在使用我提供的账户,主要因为现在登陆需要我获得密码,不过这个是可以解决。等完全安全情况下会开放自己账户登陆。
    NouveauNom
        40
    NouveauNom  
       144 天前
    爱思助手也是通过这个方式实现的吗
    NouveauNom
        41
    NouveauNom  
       144 天前
    我同意测试规则协议
    dGFpc2hhbmJvYm9AZ21haWwuY29t
    mylovelyapp
        42
    mylovelyapp  
    OP
       144 天前
    mylovelyapp
        43
    mylovelyapp  
    OP
       144 天前
    @NouveauNom
    爱思 部分也是,爱思助手需要下载 pc 端,pc 毕竟权限大点。可以直接把授权信息同步到手机里,但是得安装 itune 之类,各有好坏吧
    limber
        44
    limber  
       144 天前
    我同意测试规则协议
    b3dpbmcuc3RlZXBlci4wbEBpY2xvdWQuY29t
    zcomo
        45
    zcomo  
       144 天前
    我同意测试规则协议
    b3dvaUBtc24uY29t
    mylovelyapp
        46
    mylovelyapp  
    OP
       143 天前
    @limber
    @zcomo
    已发
    shangrenxi
        47
    shangrenxi  
       139 天前
    我同意测试规则协议
    c2hhbmdyZW54aUBnbWFpbC5jb20=
    Qinsher
        48
    Qinsher  
       139 天前 via Android
    我同意测试规则协议
    c2VubHVvZGV6aG9uZ3h1eWFvQDE2My5jb20=
    mylovelyapp
        49
    mylovelyapp  
    OP
       138 天前
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1091 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:50 · PVG 02:50 · LAX 10:50 · JFK 13:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.