Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Editar un AndroidManifest al compilar para eliminar la clave de la API

Actualmente estoy trabajando en un proyecto de Android, y aprender a usar git. Estoy bloqueado debido a un problema con git: Tengo mi clave de api de Google Maps declarada en mi archivo de manifiesto android:

<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="HEREISMYKEY"/> 

Ahora, me gustaría empujar mi código en github, pero no puedo empujar mi AndroidManifest, ya que contiene mi clave api (que se supone que permanecerá en secreto).

Me gustaría saber si hay una manera de modificarlo antes de cada empuje, o tal vez modificarlo cada vez que compilar mi aplicación?

Gracias por tu ayuda !

3 Solutions collect form web for “Editar un AndroidManifest al compilar para eliminar la clave de la API”

Cree un nuevo archivo * .xml en sus res / values ​​( api-keys.xml o algo similar).

Cambie su manifiesto para que apunte a esta cadena:

  <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="@string/GoogleMapsKey"/> 

Cuando primero empuja sus cambios al público, ponga una llave ficticia.

A continuación, edite el archivo con su clave API real.

A continuación, agregue el archivo a su archivo .gitignore para que no se vuelva a empujar.

Bueno, lo que podría hacer es poner su archivo AndroidManifest.XML en su archivo .gitignore y de esa manera no se empuja con el resto de su código .. Entonces sólo empuje hacia arriba un archivo Léame o algo que tiene un generalizado AndroidManifest .xml que cualquier persona tendría que copiar y pegar en un archivo AndroidManifest.xml con el fin de construir su aplicación. De esta manera puede realizar cambios en su aplicación, crearla según sea necesario y no tener que tratar de generalizarla en cada compilación y empujar al control de código fuente.

La forma en que he abordado problemas similares en el pasado es mediante el uso de ramas específicas en mi reporte de git para empujes púbicos.

Digamos que tiene una sucursal maestra local con sus claves en el manifiesto. Cuando estés listo para empujar a github (o dondequiera que sea) puedes hacer una nueva rama "release" sin historia. Usted puede ver un poco más sobre eso aquí: Cómo empujar nueva rama sin historia git branch --orphan release . Una vez que usted hace que quita toda la información privada, confía todos los archivos y empuja solamente esa rama a la git push origin release .

El problema con esto es que no tendrá un historial de confirmación, tal vez alguien más puede llegar a algo mejor.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.