Android cocos2d-xを使用したゲームを開発しています。Androidリリースの場合、proj.Android/gradle.properties
:
# uncomment it and fill in sign information for release mode
#RELEASE_STORE_FILE=file path of keystore
#RELEASE_STORE_PASSWORD=password of keystore
#RELEASE_KEY_ALIAS=alias of key
#RELEASE_KEY_PASSWORD=password of key
プロジェクト全体(このファイルを含む)は、プライベートリポジトリのBitBucketに配置されます。だから私は4つの質問があります:
それはすべてリスクの問題です。私の主な反対意見は、そのリポジトリをパスワードを知らないはずの誰かと共有したい場合、gitの履歴からパスワードを削除するのは本当に難しいということです。その時点までにすべての履歴を書き直す必要があります。したがって、すべてのコミットを書き直すか、スカッシュしてパスワードが含まれていた履歴を失う必要があります。そして、あなたはおそらくそれを行うことを覚えていないので、それらを省くだけで最も安全です。
シークレットをgitに保存しないようにするため、通常はシークレットファイルを.gitignoreに追加します。誰かが現在欠落しているファイルの内容を知る必要がある可能性があるため、編集されたフィールドを「CHANGEME」などのgradle.properties.example
ファイルなどに残し、ファイルを使用する誰もがgradle.properties
の作成方法を知っているようにします。
可能であれば、環境変数から置き換えて、.exampleファイルを使用する必要がないようにします。私は個人的に、プロジェクトごとに環境変数を設定するために使用できるgit無視の.envrcファイルを作成できる direnv のようなツールをお勧めします。ディレクトリに入ると、ターミナルから環境変数が自動的にロードされます。ただし、環境変数は起動された環境から取得されるため、これは常にグラフィカルツールでうまく機能するとは限りません。
一部のグラフィカルIDEは、「ターゲット」や「ワークスペース」などの概念をサポートしています。これは、一部の構成オプションがソース管理にチェックインされるファイルで構成され、その他はコンピューター上のファイルに固有であることを理解しています。
誰かがあなたの署名鍵とパスワードを入手した場合、彼らはあなたのアプリケーションの悪意のあるコピーに署名する可能性があります。
このコピーをアプリストアに送信できた場合、ユーザーは悪意のあるコピーが変更されたことを通知することなく、悪意のあるコピーを自動的に受信する可能性があります。それはあなたの鍵によって署名されたので、彼らのデバイスはそれを信頼するでしょう。
アプリストアの提出がなくても、アプリケーションのコピーに署名し、アプリが既にインストールされているデバイスにサイドロードして、同じキーで署名されているため、アプリを信頼できる可能性があります。