aero99
V2EX  ›  Apple

iOS 已购买的 APP 内购总是检测当前登录的商店 Apple store id 是否购买的那个?

  •  
  •   aero99 · Aug 28, 2024 · 3101 views
    This topic created in 646 days ago, the information mentioned may be changed or developed.

    大家可能都有几个 id ,比如我 AM 开的是土耳其因为便宜,主力 id 又是美区的,一般内购也是用的美区 id 这样为了听音乐,我商店登录的是土区,一些 App 检测到不是当初购买的美区 id 而失效 这种如何避免它不检测或者有方法避免呢?

    虽然我也有 Spotify ,但是还是使用 AM 习惯了,

    9 replies    2024-08-28 15:41:15 +08:00
    wclebb
        1
    wclebb  
       Aug 28, 2024
    检测是否已内购资格,若否,直接失效?
    zdt3476
        2
    zdt3476  
       Aug 28, 2024
    我记得多登录一个邮件账号就行了
    aero99
        3
    aero99  
    OP
       Aug 28, 2024
    @zdt3476 #2 这种方法只是登录商店不用两步验证了
    aero99
        4
    aero99  
    OP
       Aug 28, 2024
    @wclebb #1 是的,未内购状态,除非商店再换回原来的 id 就好了
    bayallen
        5
    bayallen  
       Aug 28, 2024 via iPhone   ❤️ 3
    按照苹果的设计,开发者是无法知道用户的 Apple ID 的,甚至连 storefront 这个属性都被 deprecated 了。

    一般有用户系统的(用 RevenueCat 的其实也算是有用户系统),开发者会把用户 ID 和内购绑定,然后拿用户 ID 去服务器验证。这种情况后续验证时,不依赖本地登录的 App Store 账户。

    没用户系统的,一般都会用 StoreKit 2 直接在本地验证,这种情况会依赖本地登录的 Apple ID 。

    你唯一能做的事是写邮件给开发者,让他们改变验证方式。

    而作为开发者,如果要妥善地解决这个问题,只能引入服务端验证,而这又带来了更多问题……
    leekayui
        6
    leekayui  
       Aug 28, 2024
    AM 无解,苹果系,跟着 app store 账号走的
    oddhw
        7
    oddhw  
       Aug 28, 2024
    移动端无解,只能来回切换
    mac 端就好了,am atv App Store Apple ID 都是独立的
    Leeeeex
        8
    Leeeeex  
    PRO
       Aug 28, 2024
    这个检测应该是 app 自己做的检测,有的软件几个月检测一次,有的软件打开就检测,这个应该没啥好办法。
    aero99
        9
    aero99  
    OP
       Aug 28, 2024
    @ferrum #5 我那几个 APP 都没有用户系统那肯定是本地验证了,看来以后这种内购还是不买了,要不干脆找可以黑悟空的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5820 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 02:14 · PVG 10:14 · LAX 19:14 · JFK 22:14
    ♥ Do have faith in what you're doing.