argob / cuidar-android

App Cuidar
https://www.argentina.gob.ar/aplicaciones/coronavirus
GNU General Public License v3.0
74 stars 21 forks source link

Publicar el .apk para quienes no usan PlayStore #4

Open osiris opened 4 years ago

osiris commented 4 years ago

Muchas personas que intentan minimizar la invasión a la privacidad y el anonimato, optan por utilizar Android sin asociarlo a una cuenta de Google y sólo instalan aplicaciones desde repositorios libres como https://f-droid.org/ que realizan una auditoría del código fuente y generan ellos mismos el .apk, cuando esta opción no esta disponible, al menos contar con el .apk oficial, permite instalar la aplicación manualmente copiando el .apk, por supuesto, deberían firmarlo y publicar la GPG y el hash.

zephrax commented 4 years ago

+1 a esto. Increíble que no disponibilicen el apk, poco serio.

martinszy commented 4 years ago

Si el código es abierto, se puede incluir en f-droid.org, la play store alternativa. Aquí los requerimientos para eso: https://f-droid.org/es/docs/Inclusion_Policy/

rsax02 commented 4 years ago

Si el código es abierto, se puede incluir en f-droid.org, la play store alternativa. Aquí los requerimientos para eso: https://f-droid.org/es/docs/Inclusion_Policy/

Desgraciadamente eso no va a ser posible por múltiples motivos:

  1. No existe forma de hacer una reproducible build del código, ya que, principalmente como se mencionó en otros issues, no hay una API seteada que funcione de forma oficial.
  2. Exceptuando los cambios en la API, el código fuente no está completo y carece de funciones que el binario de Play Store posee (por ejemplo, APIConstants.getInfoGetTx()).

Smali de APIConstants.java:

.class public Lar/gob/coronavirus/utils/many/APIConstants;
.super Ljava/lang/Object;
.source "APIConstants.java"

# direct methods
.method public static constructor <clinit>()V
    .locals 1

    const-string v0, "native-lib"

    .line 1
    invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V

    return-void
.end method

.method public static native getInfoGetTx(I)Ljava/lang/String;
.end method

.method public static native getSecretAutorizacionv2()Ljava/lang/String;
.end method

Ya con esos dos motivos es más que suficiente para imposibilitar su inclusión en f-droid, sin contar que tampoco podríamos compilar y usar el binario por nosotros mismos, ya que, nuevamente, carece de todas las funcionalidades requeridas.