Como o trabalho "Market License Check" do Google Play? -- google-play-store campo com drm camp android Relacionado O problema

How does Google Play's “Market license check” work?


23
vote

problema

português

cerca de um mês atrás eu comprei um jogo chamado trilha de baleia durante um Venda no Google Play. Hoje, quando tentei jogar o jogo no metrô, pediu para verificar a licença do jogo e não conseguir fazê-lo (já que não havia conexão com a internet no metrô), fechou o jogo para baixo. Quando cheguei em casa, dei uma olhada na guia Permissões do jogo e vi isto:

.

cheque de licença de mercado

pode verificar se você tem uma licença para este aplicativo do mercado

Parece que este é um recurso embutido no Google Play. Então minha pergunta é, como esta "checagem de licença" funciona? Com que frequência os aplicativos usam este telefone "recurso" para verificar se eu não sou um pirata sujo roubando os aplicativos desses desenvolvedores?

english

About a month ago I bought a game called Whale Trail during a sale on Google Play. Today, when I tried to play the game on the subway, it asked to verify the game's license, and failing to do so (since there was no internet connection on the subway), shut the game down. When I got home, I took a look at the game's permissions tab and saw this:

Market license check

Can check if you have a license for this application from Market

It seems like this is a feature built into Google Play. So my question is, how does this "license check" work? How often does apps using this "feature" phone home to verify that indeed I'm not a dirty pirate stealing these developer's apps?

     
   
   

Lista de respostas

18
 
vote
vote
Melhor resposta
 
.

Você pode escolher quando, e com que frequência, você deseja que seu aplicativo verifique sua licença e tenha controle total sobre como ele lida com a resposta, verifica os dados de resposta assinada e imponha controles de acesso.

de http://developer.android.com/guide/market/licensing/overview.html < / a>

Então sim basicamente sempre que o desenvolvedor quiser. Eu imagino que o tempo mais comum para verificar é quando o aplicativo é aberto pela primeira vez.

.

Seu aplicativo não consulta diretamente o servidor de licenciamento, mas chama o cliente do Google Play sobre o IPC remoto para iniciar uma solicitação de licença. Na solicitação de licença:

  • Seu aplicativo fornece: seu nome de pacote, um nonce que é mais tarde usado para validar qualquer resposta do servidor e um retorno de chamada qual a resposta pode ser devolvida de forma assíncrona.

  • O cliente do Google Play coleta as informações necessárias sobre o usuário e o dispositivo, como a principal conta do Google do dispositivo Nome de usuário, IMSI e outras informações. Em seguida, envia a licença Verifique a solicitação para o servidor em nome do seu aplicativo.

  • O servidor do Google Play avalia a solicitação usando todas as informações disponíveis, tentando estabelecer a identidade do usuário para um nível de confiança suficiente. O servidor verifica a identidade do usuário contra registros de compra para o seu aplicativo e retorna uma resposta de licença, que o cliente do Google Play retorna ao seu aplicativo sobre o retorno de chamada do IPC.

Então:

    .
  1. As informações sobre o aplicativo, o dispositivo e o usuário se apagam aos servidores do Google.
  2. Google então verifica seu nome contra a lista de pessoas que ele sabe pagar pelo aplicativo no Google Play. (Também pode verificar o nome do aplicativo em relação a uma lista de aplicativos que você sabe que você baixou do Google Play)
  3. Se puder ver que você baixou (e pagou), o aplicativo do Google Play Ele envia de volta que você tem uma licença, se não, então ele informa ao aplicativo que você não.

Obviamente, tudo isso é feito on-line, então se você estiver offline, então não funciona. Se eu estava escrevendo a aplicação, eu teria um contador para deixar a pessoa usá-la offline 3 vezes antes de ter que ficar online para obter a verificação de licença para parar o tipo de coisa acontecendo com você onde você não pode jogar desligada. É claro, se alguém cava para o arquivo onde o contador é armazenado, eles poderiam alterar o valor de volta para 3 tentativas toda vez que eles o usarem e nunca terá que pagar, mas isso provavelmente está além da competência técnica da maioria dos usuários.

 

You can choose when, and how often, you want your application to check its license and you have full control over how it handles the response, verifies the signed response data, and enforces access controls.

From http://developer.android.com/guide/market/licensing/overview.html

So yes basically whenever the developer wants it to. I'd imagine the most common time to check is when the application is first opened.

Your application does not query the licensing server directly, but instead calls the Google Play client over remote IPC to initiate a license request. In the license request:

  • Your application provides: its package name, a nonce that is later used to validate any response from the server, and a callback over which the response can be returned asynchronously.

  • The Google Play client collects the necessary information about the user and the device, such as the device's primary Google account username, IMSI, and other information. It then sends the license check request to the server on behalf of your application.

  • The Google Play server evaluates the request using all available information, attempting to establish the user's identity to a sufficient level of confidence. The server then checks the user identity against purchase records for your application and returns a license response, which the Google Play client returns to your application over the IPC callback.

So:

  1. The information about the application, the device and the user goes off to Google's servers.
  2. Google then checks your name against the list of people it knows have paid for the application on Google Play. (It could also check the name of the application against a list of applications it knows that you've downloaded from Google Play)
  3. If it can see that you have downloaded (and paid for) the application from Google Play it sends back that you have a license, if not then it tells the app you don't.

Obviously this is all done online so if you're offline then it won't work. If I was writing the application I would have a counter to let the person to use it offline 3 times or so before having to go online to get the license check in order to stop the kind of thing happening to you where you can't play offline. Of course if someone digs into the file where the counter is stored they could change the value back to 3 tries every time they use it and never have to pay but that's probably beyond the technical competence of most users.

 
 
 
 

Perguntas relacionadas

8  Como o Mercado Android DRM funciona?  ( How does android market drm work ) 
Eu tenho um monte de comprimidos enraizados comprados para uso em uma rede WiFi bloqueada (por razões de segurança, o acesso à Internet não é permitido). Usan...

2  Versões Android sem DRM?  ( Android versions without drm ) 
Como os smartphones se tornaram "The Thing", ele foi decidido que bloqueia seu telefone para um determinado endereço de e-mail principal e ter DRM é "Ok". And...

2  Atualização caseira Sony Xperia para Android 6.0 Marshmallow e Restauração DRM  ( Homemade update sony xperia to android 6 0 marshmallow and drm restoration ) 
Eu tenho um smartphone Xperia, Android 4.4. É possível atualizar meu dispositivo com o novo Marshmallow Android 6.0, e restaurar as teclas DRM anteriormente...

2  Vídeo protegido por senha  ( Password protected video ) 
Eu quero proteger meu vídeo instrucional com uma senha. Existe um caso de uso. Quando um usuário deseja reproduzir um arquivo criptografado ( update: arquiv...

8  Os livros do Google são protegidos por DRM?  ( Are google books drm protected ) 
Em alguns países, o Google Play oferece eBooks. Eu queria saber se esses são protegidos pela DRM. Posso exportá-los como e. epub? Ou eles são obrigados a se...

5  Posso jogar DRM Music do iTunes no meu Android?  ( Can i play drm music from itunes on my android ) 
Eu pensei que o conteúdo do DRM no iTunes só poderia ser jogado no iTunes, mas depois vi Songbird , A aplicativo não-Apple que pode jogar música protegida pe...

9  Como a Amazon AppStore confirma seus aplicativos?  ( How does the amazon appstore verify its apps ) 
Algumas vezes depois de baixar um aplicativo da Amazon AppStore, recebo um erro pop-up semelhante ao seguinte ao abrir o aplicativo: . Amazon Appstore Hou...

6  Como permitir a verificação de licença do Android Market através de uma rede segura?  ( How to allow android market license check through a secured network ) 
Temos uma rede segura que não permite acesso à Internet. Infelizmente, um aplicativo do mercado Android compramos para nossos tablets de favo de mel usa a ver...

3  Existe alguma maneira de ouvir música Zune Pass no meu telefone?  ( Is there any way to listen to zune pass music on my phone ) 
Eu tenho um Zune e baixe a música DRM-Ed através do Mercado Zune que posso ouvir desde que eu tenha uma assinatura mensal do Zune Pass. Existe alguma maneira ...

23  Como o trabalho "Market License Check" do Google Play?  ( How does google plays market license check work ) 
cerca de um mês atrás eu comprei um jogo chamado trilha de baleia durante um Venda no Google Play. Hoje, quando tentei jogar o jogo no metrô, pediu para ver...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.