[送码] 维护了快一年的会员订阅管理工具 口袋订阅,最近大幅优化了一版本 - V2EX
爱意满满的作品展示区。
iPocket

[送码] 维护了快一年的会员订阅管理工具 口袋订阅,最近大幅优化了一版本

  •  
  •   iPocket May 26 4170 views
    一个苹果 iOS 原生制作的会员订阅管理工具 口袋订阅,维护了快一年了,总体很稳定了,非常感谢国内外的朋友反馈,特别是一个老外叫 Jimmy ,好像非常喜欢我这款产品,他发现 bug 总是发邮件给我,邮件里有和他对话的几十封邮件了,真的非常感谢,也很开心。
    产品主打简约,可以快速添加会员订阅,快速查找会员订阅,其他功能,订阅 APP 里该有的应该有。然后可以通过长按别的 APP 分享到 口袋订阅 快速添加,也可以通过搜索 APP/网站 名称来快速添加,其他功能我倒觉得没那么重要,主要看个大概的费用。
    APP 不搜集你的任何数据,这里其实有个缺点,就是你想改善你的产品的时候,没有数据,就会发现无从下手,你根本不知道用户在哪个页面体验不好,全靠用户从其他渠道反馈,邮件、小红书等。如有苹果开发者也可以一起交流下这方面的经验。
    App Store 地址: https://apps.apple.com/cn/app/%E5%8F%A3%E8%A2%8B%E8%AE%A2%E9%98%85-%E8%AE%A2%E9%98%85%E7%AE%A1%E7%90%86%E4%B8%8E%E8%B4%A6%E5%8D%95%E6%8F%90%E9%86%92/id6752631319


    留言抽 20 个永久会员,明天收市后按上证指数抽出,因为我发现我送的很多兑换码感觉被机器人秒了
    抽奖程序由 GPT 提供,代码如下
    ```Javascript
    (async function lottery() {
    const drawTime = "2026-05-27 18:00:00"; // 开奖时间
    const postUrl = "https://example.com/post/123"; // 帖子链接
    const shIndex = "3123.45"; // 上证指数,建议用字符串,避免小数精度问题
    const replyTotal = 1000; // 回复总数
    const winnerCount = 20; // 抽奖个数

    if (!drawTime || !postUrl || !shIndex) {
    console.error("开奖时间、帖子链接、上证指数不能为空");
    return;
    }

    if (!Number.isSafeInteger(replyTotal) || replyTotal <= 0) {
    console.error("回复总数必须是大于 0 的安全整数");
    return;
    }

    if (!Number.isSafeInteger(winnerCount) || winnerCount <= 0) {
    console.error("抽奖个数必须是大于 0 的安全整数");
    return;
    }

    if (winnerCount > replyTotal) {
    console.error("抽奖个数不能大于回复总数");
    return;
    }

    async function sha256Hex(text) {
    const data = new TextEncoder().encode(text);
    const hashBuffer = await crypto.subtle.digest("SHA-256", data);

    return Array.from(new Uint8Array(hashBuffer))
    .map(b => b.toString(16).padStart(2, "0"))
    .join("");
    }

    function hexToBigInt(hex) {
    return BigInt("0x" + hex);
    }

    async function randomInt(seed, counter, maxExclusive) {
    const max = BigInt(maxExclusive);
    const space = 1n << 256n;
    const limit = space - (space % max);

    while (true) {
    const hash = await sha256Hex(seed + ":" + counter.value);
    counter.value++;

    const num = hexToBigInt(hash);

    // 拒绝采样,避免简单取模产生偏差
    if (num < limit) {
    return Number(num % max);
    }
    }
    }

    async function drawWinners(seed, replyTotal, winnerCount) {
    const winners = [];
    const swapped = new Map();
    const counter = { value: 0 };

    for (let i = 0; i < winnerCount; i++) {
    const remaining = replyTotal - i;
    const r = await randomInt(seed, counter, remaining);

    const selectedIndex = i + r;

    const selectedValue = swapped.has(selectedIndex)
    ? swapped.get(selectedIndex)
    : selectedIndex + 1;

    const currentValue = swapped.has(i)
    ? swapped.get(i)
    : i + 1;

    swapped.set(selectedIndex, currentValue);
    winners.push(selectedValue);
    }

    return winners;
    }

    const rawSeed = [
    `开奖时间=${drawTime}`,
    `帖子链接=${postUrl}`,
    `上证指数=${shIndex}`,
    `回复总数=${replyTotal}`,
    `抽奖个数=${winnerCount}`
    ].join("|");

    const seedHash = await sha256Hex(rawSeed);
    const winners = await drawWinners(seedHash, replyTotal, winnerCount);
    const sortedWinners = [...winners].sort((a, b) => a - b);

    console.log("========== 抽奖结果 ==========");
    console.log("原始种子:");
    console.log(rawSeed);
    console.log("");
    console.log("种子 SHA-256:");
    console.log(seedHash);
    console.log("");
    console.log("中奖楼层:");
    console.log(winners.join(", "));
    console.log("");
    console.log("中奖楼层,升序:");
    console.log(sortedWinners.join(", "));
    console.log("============================");
    })();
    ```
    146 replies    2026-05-29 10:19:22 +08:00
    1  2  
    TaoTao
        1
    TaoTao  
       May 26 via iPhone
    支持下
    vpromise
        2
    vpromise  
       May 26
    前来支持
    xspoco
        3
    xspoco  
       May 27
    支持一下
    huoma
        4
    huoma  
       May 27 via iPhone
    kk
    samli12
        5
    samli12  
       May 27
    支持
    Crazy9527
        6
    Crazy9527  
       May 27 via Android
    支持
    azhezzz
        7
    azhezzz  
       May 27
    支持
    outofbound
        8
    outofbound  
       May 27
    支持!
    eocp2020
        9
    eocp2020  
       May 27
    支持下
    marcoseaver
        10
    marcoseaver  
       May 27
    支持下!
    believems
        11
    believems  
       May 27 via iPhone
    支持
    wesky8201
        12
    wesky8201  
       May 27 via iPhone
    支持支持
    imbelike
        13
    imbelike  
       May 27
    支持一下
    AceRacer
        14
    AceRacer  
       May 27 via Android
    支持一下
    ChanYancy
        15
    ChanYancy  
       May 27
    支持支持
    song135711
        16
    song135711  
       May 27
    支持下
    whiteleopard520
        17
    whiteleopard520  
       May 27 via iPhone
    厉害了,支持
    gegeburu
        18
    gegeburu  
       May 27 via iPhone
    支持一下
    evilHa
        19
    evilHa  
       May 27
    支持一下
    s1eep
        20
    s1eep  
       May 27
    支持一下
    Fxshiny
        21
    Fxshiny  
       May 27
    NIUDE 看不懂=-=
    Lituby
        22
    Lituby  
       May 27 via Android
    支持一下
    cymcc
        23
    cymcc  
       May 27
    支持支持
    wl62613
        24
    wl62613  
       May 27
    支持一下
    bizwenbo
        25
    bizwenbo  
       May 27
    支持
    yunmeng
        26
    yunmeng  
       May 27
    分母
    Lituby
        27
    Lituby  
       May 27
    支持
    ponng
        28
    ponng  
       May 27 via iPhone
    分母一下
    eod
        29
    eod  
       May 27
    支持
    easymbol
        30
    easymbol  
       May 27
    支持一下,当个分母
    Shum1n
        31
    Shum1n  
       May 27
    众在参与
    ganzhen
        32
    ganzhen  
       May 27 via iPhone
    参与一下
    sktline
        33
    sktline  
       May 27
    支持一下
    passtest
        34
    passtest  
       May 27
    支持一下
    Emyorii
        35
    Emyorii  
       May 27
    支持一下
    roma
        36
    roma  
       May 27
    +1024
    54xavier
        37
    54xavier  
       May 27
    我是自己写接口加维护数据 + 快捷指令 + bark 每日推送提醒,有点儿累了,如果中了试试这个 app 吧
    fengtalk
        38
    fengtalk  
       May 27
    祝楼主大卖!
    lc4t
        39
    lc4t  
       May 27
    支持一下
    kongzz
        40
    kongzz  
       May 27
    支持一下
    Jokerboozp
        41
    Jokerboozp  
       May 27
    支持一下
    aka404
        42
    aka404  
       May 27 via Android
    支持一下
    windowlife
        43
    windowlife  
       May 27
    支持一下
    htd
        44
    htd  
       May 27
    支持支持
    abcde51111
        45
    abcde51111  
       May 27
    支持
    chocolatesir
        46
    chocolatesir  
       May 27
    支持一下
    LightChan
        47
    LightChan  
       May 27
    支持
    lepig
        48
    lepig  
       May 27
    实用的的小工具
    pljhonglu
        49
    pljhonglu  
       May 27
    支持一下
    Rex180123
        50
    Rex180123  
       May 27
    支持一下~
    stone9527
        51
    stone9527  
       May 27
    支持 OP
    chiaoyuja
        52
    chiaoyuja  
       May 27
    支持一下
    VincentElis1024
        53
    VincentElis1024  
       May 27
    支持一下
    w797200
        54
    w797200  
       May 27 via Android
    支持一下
    Wyearn
        55
    Wyearn  
       May 27
    支持一下
    yujianfei
        56
    yujianfei  
       May 27
    厉害,优秀
    kuicc1987
        57
    kuicc1987  
       May 27
    用了好久了,原来是老哥开发的啊~支持
    kloge
        58
    kloge  
       May 27
    支持一下
    cyang
        59
    cyang  
    PRO
       May 27
    支持一下
    luckycoding
        60
    luckycoding  
       May 27
    支持一下
    emberzhang
        61
    emberzhang  
       May 27
    支持一下下
    andykuen959595
        62
    andykuen959595  
       May 27
    支持一下
    Peikon
        63
    Peikon  
       May 27
    不出安卓版吗?
    bao626
        64
    bao626  
       May 27
    来了~
    SilentFall
        65
    SilentFall  
       May 27
    支持一下
    Lbby
        66
    Lbby  
       May 27
    支持楼主
    qhy2ch
        67
    qhy2ch  
       May 27
    支持
    raslan
        68
    raslan  
       May 27
    支持一下
    neoshui
        69
    neoshui  
       May 27
    分子在此
    zws74100000
        70
    zws74100000  
    PRO
       May 27
    当个分母
    BigVanYu
        71
    BigVanYu  
       May 27
    支持支持!感觉很实用!
    orangeChu
        72
    orangeChu  
       May 27
    简单试用了一下,感觉还不错,基础功能就很够用了,支持一下楼主。
    yautou
        73
    yautou  
       May 27
    分母支持下
    sdushn
        74
    sdushn  
       May 27
    我也来支持一下
    hongs
        75
    hongs  
       May 27
    支持一下
    bennyAAA
        76
    bennyAAA  
       May 27
    分母来了
    GGbeng1
        77
    GGbeng1  
       May 27
    特来支持
    tychanges
        78
    tychanges  
       May 27
    支持下
    aaaak
        79
    aaaak  
       May 27
    支持一下
    huangqihong
        80
    huangqihong  
       May 27
    分子
    lzoje
        81
    lzoje  
       May 27
    分母
    i33
        82
    i33  
       May 27
    支持一下
    Latin
        83
    Latin  
       May 27
    分子来了
    SuperChenCN
        84
    SuperChenCN  
       May 27
    简单试用了一下,发现居然有拼车计算分摊费用的功能,很不错

    针对这个场景有两个可以优化的建议,供参考:

    例如我作为车主
    1. 我通过 USD 结算,但是乘客使用 CNY 付款。是否可以增加按实时汇率计算的功能?
    2. 订阅是按月付费,但是乘客可能是按季度、半年或者一年付款。是否可以增加结算周期的设置?
    sun522198558
        85
    sun522198558  
       May 27
    支持一下
    48odaerina
        86
    48odaerina  
       May 27
    支持一下
    Sooncheng
        87
    Sooncheng  
       May 27
    支持下
    langdalanghonghu
        88
    langdalanghonghu  
       May 27
    支持一下
    lwsbluesky
        89
    lwsbluesky  
       May 27
    厉害了,支持
    3922989
        90
    3922989  
       May 27
    分子在此
    enaen
        91
    enaen  
       May 27
    支持一下
    viso7682
        92
    viso7682  
       May 27
    支持一下!!
    mgcnrx11
        93
    mgcnrx11  
       May 27
    分母来了
    iPocket
        94
    iPocket  
    OP
       May 27
    非常感谢感谢大家的支持,抽了 35 个,我会一个个 DM 你们的
    ![抽奖结果]( )
    iPocket
        95
    iPocket  
    OP
       May 27
    没有 DM 功能的吗? 那中奖人可以留下邮箱吗?
    iPocket
        96
    iPocket  
    OP
       May 27
    @SuperChenCN 感谢建议,后续会考虑优化下的
    iPocket
        98
    iPocket  
    OP
       May 27
    @Peikon 目前只做苹果生态
    sun522198558
        99
    sun522198558  
       May 27
    @iPocket #97 谢谢老板,bGVhcm5pbmdfZ29AMTYzLmNvbQ==
    Wyearn
        100
    Wyearn  
       May 27
    @iPocket #95 谢谢 YWFhNTgzODc2OUBnbWFpbC5jb20=
    1  2  
    About     Help     Advertise     Blog     API     FAQ     Solana     4298 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 240ms UTC 00:07 PVG 08:07 LAX 17:07 JFK 20:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86