Bạn có hai ba lựa chọn:
Giữ câu trả lời tách biệt với phần còn lại của mã nguồn
Nếu bạn muốn mã của mình là nguồn mở, tuy nhiên không muốn câu trả lời là nguồn mở, thì bạn mở mã nguồn cho ứng dụng mà không có câu hỏi & câu trả lời, với câu hỏi và câu trả lời là một "plugin" nguồn đóng riêng biệt hoặc tập tin dữ liệu. Ứng dụng Android của bạn sẽ kết hợp cả hai thứ này lại với nhau thành một ứng dụng.
Đặt câu trả lời trong mã nguồn của bạn
Ngoài ra, nếu bạn coi các câu hỏi và câu trả lời là một phần cốt lõi của những gì bạn muốn mở nguồn thì bạn nên đặt câu trả lời vào mã nguồn, tốt nhất là không bị xáo trộn để người khác có thể đọc và sửa đổi chúng . Làm xáo trộn mã nguồn để không thể hiểu và sửa đổi nó không thực sự phù hợp với các nguyên tắc của mã nguồn mở.
Đặt câu trả lời trên một máy chủ trên internet
Với cả hai giải pháp trên, người nào đó đã tải xuống ứng dụng của bạn để tìm ra câu trả lời mà không cần chơi chương trình của bạn trong bất kỳ trường hợp nào - bất kể bạn che giấu / mã hóa câu trả lời của mình như thế nào, nếu chương trình của bạn có thể xác định câu trả lời mà không cần thêm thông tin, vì vậy một con người có thể kiểm tra ứng dụng biên dịch của bạn.
Nếu bạn thực sự muốn đảm bảo rằng không ai có thể tìm ra câu trả lời thì lựa chọn thực sự duy nhất là không cung cấp cho họ câu trả lời và yêu cầu ứng dụng gọi dịch vụ web, v.v ... bất cứ khi nào họ muốn biết câu trả lời. Ứng dụng sẽ gửi câu trả lời mà người dùng đã nhập và dịch vụ web sẽ cho ứng dụng biết câu trả lời có đúng hay không, theo cách đó, người dùng không có cách nào trả lời câu trả lời là gì cho đến khi họ đã có câu trả lời đúng của brute-buộc dịch vụ web, mà bạn có thể phát hiện và bảo vệ chống lại).
Nếu bạn đang tìm cách làm xáo trộn câu trả lời của mình, điều đó gợi ý cho tôi rằng bạn không thực sự muốn mở nguồn câu trả lời của mình ngay từ đầu, vì vậy bạn nên xem xét các lựa chọn đầu tiên.
Nếu điều quan trọng là người dùng không thể tìm thấy câu trả lời trước thì tùy chọn thứ ba là lựa chọn thực sự duy nhất của bạn, tuy nhiên tôi đang loay hoay nghĩ về một kịch bản mà điều này đáng để nỗ lực, nhất là vì nó ngăn người dùng của bạn từ việc sử dụng ứng dụng của bạn mà không cần kết nối Internet.