Hirdetés

Keresés

Új hozzászólás Aktív témák

  • domel

    tag

    válasz domel #5539 üzenetére

    Kettővel ezelőtti probléma megoldása:
    Ha Signed APK-t akarunk külső forrásból telepíteni, akkor annak más lesz az SHA1 kódja és nem fog működni a google térkép, de az alábbi kóddal le lehet programból lekérdezni az új SHA1 kódot
    public String getSign(Context context, String key) {
    String ss="";
    try {
    PackageInfo info = context.getPackageManager().getPackageInfo(
    BuildConfig.APPLICATION_ID,
    PackageManager.GET_SIGNATURES
    );
    for (android.content.pm.Signature signature : info.signatures) {
    MessageDigest md = MessageDigest.getInstance(key);
    md.update(signature.toByteArray());
    byte[] digest = md.digest();
    StringBuilder toRet = new StringBuilder();
    for (int i = 0; i < digest.length; i++) {
    if (i != 0) {
    toRet.append(":");
    }
    int b = digest[i] & 0xff;
    String hex = Integer.toHexString(b);
    if (hex.length() == 1) {
    toRet.append("0");
    }
    toRet.append(hex);
    }
    String s = toRet.toString();
    return s.toUpperCase();
    }
    } catch (PackageManager.NameNotFoundException e1) {
    Log.e("name not found", e1.toString());
    } catch (NoSuchAlgorithmException e) {
    Log.e("no such an algorithm", e.toString());
    } catch (Exception e) {
    Log.e("exception", e.toString());
    }
    return ss.toUpperCase();
    }

    getSign(getApplicationContext(),"SHA1")

    ezután már csak létre kell hozni egy másodlagos térkép kulcsot és máris működik a google térkép. (majd egyszer erőt veszek magamon, és áttérek kotlinra)

  • Zsoxx

    őstag

    válasz domel #5539 üzenetére

    Nem tudom sajnos. Egyszer jártam úgy, hogy AS újratelepítés után nem indult el a térképes alkalmazás, mert megváltozott az SHA1. Az API key oldalán átírtam az újra, és utána már működött.

Új hozzászólás Aktív témák