46 votes

Mise en place d'un essai de 30 jours

Question pour les développeurs Mac indépendants:

Comment puis-je mettre en œuvre un essai chronométrique de 30 jours d'une manière non perverse? Mettre un compteur dans les préférences n'est pas une option, car effacer les préférences une fois par mois ne pose pas de problème pour un utilisateur moyen. Mettre le compteur dans un fichier caché quelque part semble un peu louche - en tant qu'utilisateur que je déteste quand les applications saupoudrent mon disque dur de fichiers aléatoires. Des idées?

60voto

Barry Wark Points 73462

Cette question revient à plusieurs reprises sur le cacao-dev mailing list et le consensus réponse est toujours de faire la chose la plus simple possible. Pirates va briser tous les, mais le plus conçue solution. Et elles sont peu susceptibles de payer pour le logiciel, de toute façon. Aller pour le 80/20 solution: la solution de facilité qui obtient 80% de l'effet de 20% de l'effort. Dans ce cas, de mettre quelque chose dans ~/Bibliothèque/Application Support/votre.app.com/. Vous pouvez nommer le fichier en quelque chose d'innocent si vous souhaitez dissimuler les choses juste un peu. Aide de l'utilisateur par défaut est trop facile.

Quoi que vous fassiez, ne pas utiliser l'adresse MAC ou une autre ID de matériel. Les utilisateurs avec un réseau de répertoire de base (par exemple, dans une commune laboratoire) vous hais. À l'aide de matériel d'identité est juste mal.

Si quelqu'un est en amour avec votre programme tellement qu'ils sont prêts à rompre votre période d'essai, les limites, les laisser. Le logiciel libre ne vous coûte rien et leur bonne volonté (et peut-être la recommandation à d'autres) vaut beaucoup.

Enfin, écrire des logiciels que les gens veulent utiliser et le prix de sa valeur. Si votre prix est une bonne valeur et les gens veulent utiliser, la plupart des gens vont payer pour cela.

25voto

K Singh Points 1265

Je vous propose de mettre en œuvre quelques-uns des choses qui sont moins intrusive et peut éviter un utilisateur normal de la désinstallation ou de l'acheter à un mois de la période.

  1. Une série de procès-numéro de série qui stocke la date d'expiration en elle. Vous pouvez utiliser encrpytion pour stocker la date d'expiration dans le numéro de série.
  2. Maintenant, créez un fichier de configuration qui stocke les données dans le cryptées format et contenir le numéro de série.

En outre de mettre en œuvre ces choses dans le fichier de configuration.

  1. Prenez note de l'heure/de la date à chaque fois que l'utilisateur lance l'application.
  2. Remarque la durée de la période d'application a été ouvert.

En faisant de l'enregistrement de l'horodatage, vous pouvez éviter ces solutions de contournement:

  1. Si l'utilisateur annule la date d'ordinateur, vous savez que l'app a été déjà exécuté ce jour-là. Dire que l'utilisateur a exécuté application sur 1 et 3 jour du mois. Maintenant, après 30 jours renverse la date et l'établit à 2 mois. Maintenant par fichier de configuration, vous savez que app déjà couru sur 1 et 3, de sorte que l'utilisateur a foiré dates sur l'ordinateur.
  2. Disons que chaque fois que l'utilisateur lance l'application par le premier paramètre de date pour le 5 du mois. En vous connectant à votre application en cours d'exécution en temps vous verrez que si le nombre total d'heures dans une journée dépasser 24 alors l'utilisateur est dupant autour.

S'assurer que votre application ne fonctionne pas sans le fichier de configuration. Donc, essentiellement, vous envoyez le chiffrés numéro de série dans un fichier ou peut-être lors de la saisie du numéro de série vous pouvez créer un fichier. Depuis le numéro de série a déjà la date d'expiration de l'utilisateur ne peut pas réutiliser le numéro de série également.

Je ne voudrais pas suggérer l'internet façon parce que les gens énervé lorsque l'application tente de se connecter au serveur à chaque fois. De Plus, on peut se méfier de ce que vous essayez d'envoyer des données personnelles des utilisateurs à vos serveurs.

Une chose que je voudrais dire: peu importe la force de l'anti-piraterie de la technique que vous utilisez, quelqu'un est lié à la casser. Vous ne faites pas de votre application pour ces gars-là. Vous faites de votre application pour les personnes qui voudraient votre logiciel et va l'acheter et heureusement. Afin de disposer de l'anti-piraterie dans les limites sans perdre de véritables clients en faisant de votre application trop envahissante au cours de la période d'essai. Une pensée également dit, si votre logiciel est la possibilité de craquage qui signifie qu'il est aussi populaire. De nouveau on peut différer d'opinion, et ne voudrait pas faire une digression sur ces questions.

11voto

Chris Becke Points 19910

Considérez ceci. Combien d'utilisateurs potentiels de votre logiciel sont ici, juste des démangeaisons de l'utiliser solide pour les 30 prochains jours?

Je soupçonne que le beaucoup plus de cas normal est: les Utilisateurs rencontrent un nouveau logiciel qui permet de résoudre un problème qu'ils ont eu sur un site comme lifehacker.com. le logiciel est téléchargé, joué avec brièvement, puis mettre de côté. Peut-être son mp3 logiciel de rip et ils n'ont pas de cd rip à cette époque. Ou ils sont juste occupés à ce jour, mais ils vont aller faire un tour pour vérifier que le logiciel 'bientôt'.

30 jours passer. Probablement plus. Alors seulement ils achètent un CD, rencontre une sorte de "problème" et rappelez-vous, " aha, il y a que la version d'essai que j'ai téléchargé! Où ai-je mis il de nouveau?" Il n'a pas d'importance. Sans jamais être utilisé, le "procès" a expiré.

Je ne peux pas compter le nombre d'outils logiciels qui sont tombés dans ce seau pour moi. La journée d'un morceau de logiciel est recommandé pour moi, le jour où je vois un commentaire positif sur lifehacker, n'est JAMAIS la journée en fait, j'ai besoin - ou même le temps d'utiliser / d'analyser le programme que j'ai téléchargé et installé.

7voto

lucius Points 5239

Avoir le logiciel expire après 30 jours de calendrier qui est mauvais parce que si quelqu'un le télécharge, s'exécute une fois, puis décide qu'ils vont évaluer un mois plus tard? La prochaine fois qu'ils s'y lancer, un mois plus tard, il va dire qu'il a expiré.

J'irais avec l'avoir limité à 14 lance, ou quelque chose comme 120 minutes d'utilisation.

Comme pour la mise en œuvre, un fichier (caché ou non) dans les Préférences de l'utilisateur dossier, avec une obfuscation nom, semble être la meilleure façon d'aller. Le fichier n'est pas placés au hasard sur le disque dur, mais l'utilisateur ne peut pas facilement trouver le fichier à supprimer.

5voto

Andreas Brinck Points 23806

Le moins mauvais moyen consiste simplement à demander à l'utilisateur de supprimer le programme après un mois ou de payer pour cela;)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X