Vous avez deux trois options:
Gardez les réponses séparées du reste du code source
Si vous voulez que votre code soit open source, mais que les réponses ne soient pas open source, vous devez ouvrir le code source de l'application sans les questions et réponses, les questions et réponses étant un "plugin" fermé distinct ou fichier de données. Votre application Android regrouperait ces deux éléments en une seule application.
Mettez les réponses dans votre code source
Sinon, si vous considérez les questions et les réponses comme une partie essentielle de ce que vous voulez utiliser en source ouverte, vous devriez alors placer les réponses dans le code source, de préférence non obscurci pour que les autres puissent les lire et les modifier . Obstruer le code source afin qu'il ne puisse pas être compris et modifié ne correspond pas vraiment aux principes du code source ouvert.
Mettez les réponses sur un serveur sur Internet
Avec les deux solutions ci-dessus, il est possible pour quelqu'un qui a téléchargé votre application de trouver les réponses sans lire votre programme dans les deux cas - peu importe la façon dont vous obscurcissez / chiffrez vos réponses, si votre programme peut identifier la réponse sans informations supplémentaires, Un humain peut-il examiner votre application compilée?
Si vous voulez vraiment vous assurer que personne ne peut trouver les réponses, alors la seule véritable option est de ne pas leur donner les réponses et de laisser l'application appeler un service Web, etc. ... chaque fois qu'ils veulent connaître la réponse. L’application doit envoyer la réponse saisie par l’utilisateur et le service Web doit indiquer à l’application si la réponse est correcte ou non. De cette manière, l’utilisateur n’a aucun moyen de dire quelle est la réponse tant qu’ils ne disposent pas de la bonne réponse (bref). forcer brusquement le service Web, que vous pouvez détecter et protéger contre).
Si vous cherchez des moyens de brouiller vos réponses, cela me suggère que vous ne voulez pas vraiment ouvrir vos réponses en source, alors vous devriez envisager les premières options.
S'il est essentiel que l'utilisateur ne puisse pas trouver la réponse à l'avance, alors la troisième option est votre seul choix réel. Cependant, j'ai du mal à imaginer un scénario dans lequel cela en vaudrait la peine, surtout parce que cela empêche vos utilisateurs d'utiliser votre application sans connexion Internet.