Estou desenvolvendo um aplicativo Android. Em que tudo está funcionando direito. Meu aplicativo está pronto para iniciar. Mas aí eu preciso implementar mais um recurso. Preciso exibir um pop-up que contém
Rate It
e Remind me later
Aqui, se algum usuário avaliar o aplicativo no mercado, o pop-up não desaparecerá. Eu pesquisei no Google e encontrei um link . Com isso eu entendo que não é possível saber. Portanto, preciso de uma sugestão para isso.
Alguém já enfrentou essa situação antes? Em caso afirmativo, existe alguma solução ou alternativa para isso?
android
google-play
Naveen
fonte
fonte
Mar 15 2011
. então quase 20 meses se passaram. Acho que alguém tem solução ou alternativa para minha necessidade. que você postou aqui.implementation 'com.vorlonsoft:androidrate:1.0.3'
)Respostas:
Eu implementei isso há um tempo, até certo ponto. É impossível saber se um usuário avaliou um aplicativo ou não, para evitar que as avaliações se tornem uma moeda (alguns desenvolvedores podem adicionar uma opção como "Avalie este aplicativo e obtenha fulano no aplicativo gratuitamente").
A classe que escrevi fornece três botões e configura a caixa de diálogo para que ela seja mostrada apenas depois que o aplicativo for iniciado
n
vezes (os usuários têm uma chance maior de classificar o aplicativo se o usarem um pouco antes. A maioria deles é improvável saber até mesmo o que faz na primeira execução):Integrar a classe é tão simples quanto adicionar:
Para sua atividade. Ele só precisa ser adicionado a uma atividade em todo o aplicativo.
fonte
apprater
caixa de diálogo apenas após a autenticação e alterandoshared preference
para incluir o endereço de e-mail do Google nokey
.AppRater.app_launched(this);
dentro do meuonCreate()
de MainActivity. Eu também alterei o número mínimo de inicializações necessárias para 2. Mas, não estou vendo a caixa de diálogo após a inicialização de 2 aplicativos. Você pode me ajudar? Obrigado!Context.MODE_PRIVATE
-context.getSharedPreferences("apprater", Context.MODE_PRIVATE);
Meu único usando DialogFragment:
Em seguida, use-o em
onCreate()
sua FragmentActivity principal:fonte
setPositiveButton
esetNegativeButton
, está escrevendo para preferências compartilhadas usando commit, mas se você usar apply, que é assíncrono e manterá a referência à atividade até que ela seja concluída e logo depois disso está chamando de ignorar. Dismiss tentará destruir o fragmento, mas não pode porque a atividade é mantida / usada pelo processo de aplicação de preferência compartilhada. (Usei isso porque o AndroidStudio solicitará que o usuário altere o commit para aplicar, não faça isso a menos que você use alguma outra lógica)Acho que o que você está tentando fazer é provavelmente contraproducente.
Facilitar a avaliação dos aplicativos é geralmente uma boa ideia, já que a maioria das pessoas que se preocupam faz isso porque gostam do aplicativo. Há rumores de que o número de classificações afeta sua classificação de mercado (embora eu veja poucas evidências disso). Insistir para que os usuários classifiquem - por meio de telas de reclamação - provavelmente fará com que as pessoas eliminem a reclamação por meio de uma classificação ruim.
Adicionar a capacidade de classificar diretamente um aplicativo causou uma ligeira diminuição nas classificações numéricas da minha versão gratuita e um ligeiro aumento no meu aplicativo pago. Para o aplicativo gratuito, minhas avaliações de 4 estrelas aumentaram mais do que minhas avaliações de 5 estrelas, pois as pessoas que pensavam que meu aplicativo era bom, mas não muito bom, começaram a avaliá-lo também. A mudança foi de cerca de -0,2. Para os pagos, a variação foi de cerca de +0,1. Devo removê-lo da versão gratuita, mas gosto de receber muitos comentários.
Coloquei meu botão de classificação em uma tela de configurações (preferências), onde ele não afeta a operação normal. Ainda aumentou minha taxa de classificação por um fator de 4 ou 5. Não tenho dúvidas de que, se tentasse persuadir meus usuários a fazerem uma classificação, muitos usuários me dariam classificações ruins em protesto.
fonte
AndroidRate é uma biblioteca para ajudá-lo a promover seu aplicativo Android, solicitando aos usuários que avaliem o aplicativo depois de usá-lo por alguns dias.
Módulo Gradle:
MainActivity.java:
As condições padrão para mostrar a caixa de diálogo de taxas são as seguintes:
AppRate#setInstallDays(byte)
.AppRate#setLaunchTimes(byte)
.AppRate#setRemindInterval(byte)
.AppRate#setRemindLaunchTimes(byte)
.setShowLaterButton(boolean)
.DialogInterface.OnClickListener#onClick
será passado no argumento deonClickButton
.AppRate#setDebug(boolean)
garantirá que a solicitação de classificação seja exibida sempre que o aplicativo for iniciado. Este recurso é apenas para desenvolvimento! .Requisitos opcionais de eventos personalizados para mostrar a caixa de diálogo
Você pode adicionar requisitos opcionais adicionais para mostrar a caixa de diálogo. Cada requisito pode ser adicionado / referenciado como uma string exclusiva. Você pode definir uma contagem mínima para cada evento (por exemplo, "action_performed" 3 vezes, "button_clicked" 5 vezes, etc.)
Limpar sinalizador de diálogo de exibição
Quando você quiser mostrar o diálogo novamente, chame
AppRate#clearAgreeShowDialog()
.Quando o botão é pressionado
ligue
AppRate#showRateDialog(Activity)
.Definir visualização personalizada
ligue
AppRate#setView(View)
.Tema específico
Você pode usar um tema específico para aumentar o diálogo.
Diálogo personalizado
Se você quiser usar seus próprios rótulos de diálogo, substitua os recursos xml de string em seu aplicativo.
Verifique se o Google Play está disponível
fonte
Use esta biblioteca, é simples e fácil .. https://github.com/hotchemi/Android-Rate
adicionando a dependência ..
fonte
implementation 'com.vorlonsoft:androidrate:1.0.3'
). Está atualizado.Esta solução é muito semelhante às apresentadas acima. A única diferença é que você poderá atrasar o prompt do diálogo de classificação por lançamentos e dias. Se o botão Lembrar mais tarde for pressionado, atrasarei o pop-up por 3 dias e 10 lançamentos. O mesmo é feito para aqueles que selecionaram para avaliá-lo, porém os atrasos são maiores (para não incomodar o usuário tão cedo no caso de ele realmente ter avaliado o aplicativo. Isso pode ser alterado para não ser mostrado novamente, então você terá que altere o código ao seu gosto). Espero que ajude alguém!
Os botões têm cor e fundo específicos. O plano de fundo é como mostrado neste arquivo xml:
fonte: abordagem Android para "Avalie meu aplicativo"
fonte
Estou usando esta solução fácil. Você pode simplesmente adicionar esta biblioteca com o gradle: https://github.com/fernandodev/easy-rating-dialog
fonte
Como você pode ver na outra postagem que você vinculou, não há como o aplicativo saber se o usuário deixou um comentário ou não. E por um bom motivo.
Pense nisso, se um aplicativo pudesse dizer se o usuário deixou um comentário ou não, o desenvolvedor poderia restringir certos recursos que só seriam desbloqueados se o usuário deixasse uma classificação de 5/5. Isso levaria os outros usuários do Google Play a não confiar nas avaliações e prejudicaria o sistema de classificação.
As soluções alternativas que vi é que o aplicativo lembra o usuário de enviar uma classificação sempre que o aplicativo é aberto um determinado número de vezes ou um intervalo definido. Por exemplo, a cada dez vezes que o aplicativo for aberto, peça ao usuário para deixar uma avaliação e fornecer um botão "já concluído" e "lembre-me mais tarde". Continue mostrando esta mensagem se o usuário tiver optado por lembrá-lo mais tarde. Alguns outros desenvolvedores de aplicativos mostram esta mensagem com um intervalo crescente (como, 5, 10, 15ª vez que o aplicativo é aberto), porque se um usuário não deixou uma avaliação na, por exemplo, 100ª vez que o aplicativo foi aberto, é provavelmente ele / ela não deixará um.
Essa solução não é perfeita, mas acho que é o melhor que você tem por agora. Isso leva você a confiar no usuário, mas perceba que a alternativa significaria uma experiência potencialmente pior para todos no mercado de aplicativos.
fonte
Solução Java e Kotlin (API de revisão no aplicativo do Google em 2020):
Primeiro, em seu
build.gradle(app)
arquivo, adicione as seguintes dependências (configuração completa aqui )Adicione este método ao seu
Activity
:Chame-o como qualquer outro método:
O código Kotlin pode ser encontrado aqui
fonte
Versão Kotlin da resposta de Raghav Sood
Rater.kt
Resposta otimizada
Rater.kt
Constants.kt
strings.xml
fonte