Dois pais, um registro, ninguém paga duas vezes
O Reward Study deixa um segundo adulto entrar na mesma família através de um convite do iCloud, não uma segunda conta. O adulto convidado vê as mesmas tarefas, a mesma loja de recompensas e o mesmo registro que o primeiro, pode aprovar e ajustar créditos com autoridade plena, e nunca abre uma assinatura nem paga por um lugar próprio.
registro compartilhado, não importa quantos adultos estejam nele
custo extra pelo lugar de um coadulto convidado
a versão em que uma criança pode se vincular sozinha do mesmo jeito
O problema
Por que dois adultos acabam rodando duas versões separadas da verdade?
Na maioria das famílias, o telefone que tem o app é o telefone que administra a casa. O outro adulto recebe atualizações de segunda mão, por mensagem, depois do fato. Isso funciona até parar de funcionar: uma aprovação espera porque quem tem o app está numa reunião, ou uma recompensa é aprovada duas vezes porque ninguém avisou o segundo adulto que já tinha acontecido.
O Compartilhamento Familiar já resolve pagar pelo app uma vez para a família inteira. Não resolve um adulto trabalhando a partir de uma cópia da verdade que está um dia desatualizada, nem uma criança perguntando para quem estiver por perto em vez de quem realmente disse sim.
O problema de fundo não é comunicação entre dois adultos que se dão bem. É que a maioria dos softwares domésticos foi construída em torno de um único login, e um segundo adulto encaixado nesse desenho acaba, na melhor das hipóteses, como espectador, ou, na pior, como uma segunda cópia desconectada da família. De qualquer jeito, alguém está trabalhando com informação desatualizada sem saber.
O convite
Como um coadulto de fato entra na mesma família?
O mecanismo é o CKShare, o próprio framework de compartilhamento da Apple embutido no iCloud. O adulto que configurou a família envia um convite, o outro adulto aceita no próprio aparelho, e a partir daí os dois estão olhando o mesmo registro: os mesmos filhos, as mesmas tarefas, a mesma loja de recompensas, e o mesmo histórico de todo crédito que já se moveu.
Nada é copiado e nada espera uma janela de sincronização. É uma família com duas portas de entrada, então uma aprovação digitada num telefone aparece no outro na hora, sem que nenhum dos dois faça nada para isso acontecer.
- O coadulto convidado nunca ocupa um lugar pago e nunca precisa de uma assinatura própria.
- Os dois adultos podem aprovar tarefas, ajustar créditos à mão, e ver o histórico completo com o motivo por trás de todo lançamento.
- Uma criança vinculada à família pode aceitar o mesmo tipo de convite e vincular o próprio aparelho sozinha, um mecanismo adicionado na versão 1.0.3.
Essa é parte do motivo pelo qual o preço do Pro é definido por família e não por adulto: o convite de coadulto é algo que uma assinatura já cobre, não um upsell em cima dela.
O bloqueio de cada adulto
Os dois adultos compartilham um PIN, ou cada um tem o seu?
Entrar na mesma família não significa compartilhar uma única trava para acessá-la. Toda ação de adulto, em qualquer um dos aparelhos, fica atrás do Face ID ou Touch ID daquele aparelho, com um PIN definido pelo adulto como reserva se a biometria não estiver disponível. O PIN é um hash salgado e esticado guardado só no Keychain daquele aparelho, nunca enviado a lugar nenhum e nunca compartilhado entre os telefones dos dois adultos.
Isso tem um efeito prático na configuração de coadulto especificamente: não existe segredo compartilhado para combinar, entregar, ou esquecer de atualizar depois que um telefone é trocado. Cada adulto desbloqueia o próprio aparelho do próprio jeito, e os dois chegam na mesma família assim que passam.
Onde os dados realmente ficam
Convidar um coadulto envia a família para um novo servidor?
Não. Não existe conta para criar e nenhum servidor rodado pelo desenvolvedor pelo qual os dados de nenhum dos dois adultos passem. A família vive no próprio iCloud da família, e o CKShare é o mecanismo da própria Apple para estender acesso a uma segunda Conta Apple dentro desses mesmos dados do iCloud, não uma cópia enviada para algum lugar novo. Existem zero SDKs de terceiros no app, e a própria ficha de privacidade dele na App Store diz Dados Não Coletados.
Para dois adultos decidindo se vinculam suas famílias, isso responde à pergunta por trás da técnica: ninguém além dos dois, e a própria infraestrutura do iCloud da Apple carregando isso entre os aparelhos, jamais vê o convite ou o que ele compartilha.
Duas famílias, uma Conta Apple
E se o segundo adulto já administra a própria família?
Ser convidado como coadulto não usa nada, e não impede aquele adulto de também ser dono de uma família completamente separada, para filhos que não fazem parte da compartilhada. Esse é um recurso diferente: duas famílias sob uma Conta Apple cobre o caso, na maioria das vezes pais separados administrando cada um suas próprias tarefas e recompensas para o tempo em que a criança está realmente com eles.
Ser coadulto dentro de uma família e dono de outra não entram em conflito. Nada de uma cruza para a outra, e entrar numa família por convite, o caso comum de coadulto sobre o qual este texto trata, nunca precisa de um lugar pago em nenhuma das duas versões do app.
Notificações
Por que só um adulto é avisado quando uma tarefa é concluída?
As notificações no Reward Study são moldadas pelo que um aparelho realmente precisa saber, não transmitidas para todo aparelho ligado à família. O aparelho de um adulto é avisado quando uma criança termina uma tarefa ou pede para gastar créditos, porque esse é o momento em que um adulto tem algo a decidir. Um aparelho nunca é notificado da própria ação: o telefone que acabou de aprovar algo não vibra um instante depois para te dizer que você aprovou.
Com dois adultos compartilhando uma família, os dois são avisados sobre a ação de uma criança, e nenhum dos dois é avisado sobre a aprovação do outro como se fosse novidade. O registro já grava quem aprovou o quê e quando, com o motivo anexado, então se você quiser saber o que seu coadulto fez enquanto você estava fora, o histórico responde isso sem um comentário contínuo de notificações tentando fazer o mesmo trabalho pior.
A mesma regra vale para o aparelho próprio de uma criança ou uma sessão de Modo Criança: a criança é avisada quando algo é aprovado, recusado com uma nota, ou ajustado à mão com um motivo, e não é avisada de nada sobre ações do lado dos adultos que nunca a envolveram. Uma notificação existe para contar a alguém algo que essa pessoa ainda não sabia, não para anunciar todo evento da família para toda tela que por acaso está conectada.