Autore Topic: Problema con le mappe  (Letto 1070 volte)

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Problema con le mappe
« il: 02 Agosto 2015, 23:48:34 CEST »
0
Non riesco a visualizzare le mappe.

Seguendo il tutorial al link

Working with the Google Maps Android API in Android Studio - Techotopia

ho creato l'API KEY e l'ho copiata in "google_maps_api.xml", ma quando lancio il programma mi appare l'immagine
che allego; quando clicco sul bottone "Update" mi appare un messaggio d'errore (allego l'immagine).

I Google Play Services mi sembra di averli gia' installati (allego le due immagini dell'SDK Manager e riporto
il file "build.gradle").

Il programma che riporto e' quello generato automaticamente da Android Studio quando in fase di creazione del
progetto si clicca su "Google Maps Activity".

Come devo fare per far visualizzare le mappe?

********** MapDemoActivity.java *********
Codice (Java): [Seleziona]
package com.ebookfrenzy.mapdemo;

import android.support.v4.app.FragmentActivity;
import android.os.Bundle;

import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;

public class MapDemoActivity extends FragmentActivity {

    private GoogleMap mMap; // Might be null if Google Play services APK is not available.

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_map_demo);
        setUpMapIfNeeded();
    }

    @Override
    protected void onResume() {
        super.onResume();
        setUpMapIfNeeded();
    }

    /**
     * Sets up the map if it is possible to do so (i.e., the Google Play services APK is correctly
     * installed) and the map has not already been instantiated.. This will ensure that we only ever
     * call {@link #setUpMap()} once when {@link #mMap} is not null.
     * <p/>
     * If it isn't installed {@link SupportMapFragment} (and
     * {@link com.google.android.gms.maps.MapView MapView}) will show a prompt for the user to
     * install/update the Google Play services APK on their device.
     * <p/>
     * A user can return to this FragmentActivity after following the prompt and correctly
     * installing/updating/enabling the Google Play services. Since the FragmentActivity may not
     * have been completely destroyed during this process (it is likely that it would only be
     * stopped or paused), {@link #onCreate(Bundle)} may not be called again so we should call this
     * method in {@link #onResume()} to guarantee that it will be called.
     */

    private void setUpMapIfNeeded() {
        // Do a null check to confirm that we have not already instantiated the map.
        if (mMap == null) {
            // Try to obtain the map from the SupportMapFragment.
            mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map))
                    .getMap();
            // Check if we were successful in obtaining the map.
            if (mMap != null) {
                setUpMap();
            }
        }
    }

    /**
     * This is where we can add markers or lines, add listeners or move the camera. In this case, we
     * just add a marker near Africa.
     * <p/>
     * This should only be called once and when we are sure that {@link #mMap} is not null.
     */

    private void setUpMap() {
        mMap.addMarker(new MarkerOptions().position(new LatLng(0, 0)).title("Marker"));
    }
}

********** google_maps_api.xml **********
Codice (XML): [Seleziona]
<resources>
    <!--
   TODO: Before you run your application, you need a Google Maps API key.

   To get one, follow this link, follow the directions and press "Create" at the end:

https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=DA:4F:C6:36:24:69:5B:97:7D:FA:54:E8:F0:D4:4E:F8:68:88:95:CF%3Bcom.ebookfrenzy.mapdemo

   You can also add your credentials to an existing key, using this line:
   DA:4F:C6:36:24:69:5B:97:7D:FA:54:E8:F0:D4:4E:F8:68:88:95:CF;com.ebookfrenzy.mapdemo

   Once you have your key (it starts with "AIza"), replace the "google_maps_key"
   string in this file.
   -->
    <string name="google_maps_key" translatable="false"
       templateMergeStrategy="preserve">AIzaSyCCCCzCosTLlLtrdJ_Vo86l_J3E0IKWwDs</string>
</resources>

********** build.gradle **********
Codice: [Seleziona]
apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.ebookfrenzy.mapdemo"
        minSdkVersion 19
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.google.android.gms:play-services:6.5.87'
}

Offline LinkOut

  • Utente normale
  • ***
  • Post: 269
  • Respect: +37
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Problema con le mappe
« Risposta #1 il: 03 Agosto 2015, 11:09:51 CEST »
0
Partendo dal presupposto che non ho letto tutto il post.

-> Apri GoogleMaps (Applicazione) ed aggiorna PlayService come richiesto, eventualmente aggiorna anche GoogleMaps dal PlayStore.
-> Se continua a non vedersi la mappa, allora i casi potrebbero essere diversi, se l'app crasha allora posta il logcat.


Saluti.

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #2 il: 03 Agosto 2015, 13:09:48 CEST »
0
Come faccio a aggiornare i Play Services?
Devo usare l'SDK Manager?

Offline LinkOut

  • Utente normale
  • ***
  • Post: 269
  • Respect: +37
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Problema con le mappe
« Risposta #3 il: 03 Agosto 2015, 13:25:54 CEST »
0
Play service è un applicazione del telefono, la aggiorni tappando sul bottone aggiorna Google Play Service.
Solitamente se questo aggiornamento manca e tu usi una versione del playservice che lo richiede (come nel tuo caso) basta aggiornarlo aprendo google maps, che ti dirà di aggiornare l'applicazione per proseguire.

PS: Google Play Service, non si trova facendo la normale ricerca su Google Play Store.

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #4 il: 03 Agosto 2015, 13:34:33 CEST »
0
A quanto ho capito si tratta di lavorare sul cellulare, ma se io uso l'emulatore?

Offline LinkOut

  • Utente normale
  • ***
  • Post: 269
  • Respect: +37
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Problema con le mappe
« Risposta #5 il: 03 Agosto 2015, 14:15:18 CEST »
0
Stessa cosa... Apri google maps sull'emulatore e vedi se funziona...

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #6 il: 03 Agosto 2015, 15:38:24 CEST »
0
Ho provato a lanciare l'applicazione "Google Maps" con il computer e NON mi viene chiesto nessun aggiornamento.
Ho aggiornato "Google Maps" sul cellulare, ma e' tutto come prima, quando lancio il programma mi appare la
solita schermata con il bottone "Update", quando clicco sul bottone il programma collassa.

Forse con il cellulare il programma non funziona perche' ho una versione troppo vecchia di Android, mi sembra che
sul tutorial sia scritto di usare l'API level 19 come minimo (io sul cellulare ho l'API level 17 - allego
l'immagine), ma perche' SULL' EMULATORE il programma NON funziona?


********** LogCat (Log level: Error) *********
Codice: [Seleziona]
08-03 09:10:18.510      966-966/com.ebookfrenzy.mapdemo E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.ebookfrenzy.mapdemo, PID: 966
    android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=market://details?id=com.google.android.gms flg=0x80000 pkg=com.android.vending }
            at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1632)
            at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
            at android.app.Activity.startActivityForResult(Activity.java:3424)
            at android.app.Activity.startActivityForResult(Activity.java:3385)
            at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:817)
            at android.app.Activity.startActivity(Activity.java:3627)
            at android.app.Activity.startActivity(Activity.java:3595)
            at com.google.android.gms.dynamic.a$5.onClick(Unknown Source)
            at android.view.View.performClick(View.java:4438)
            at android.view.View$PerformClick.run(View.java:18422)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)

Offline LinkOut

  • Utente normale
  • ***
  • Post: 269
  • Respect: +37
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Problema con le mappe
« Risposta #7 il: 03 Agosto 2015, 15:46:34 CEST »
0
Ma non è così complesso da capire:

L'applicazione che stai usando necessita di una versione di Google Play Service non presente ne sull'emulatore ne sul tuo telefono.
Se sul telefono non funziona è perchè non hai l'ultima versione o comunque la versione richiesta dall'app che stai testando di Google Play Service installata.
Se sull'emulatore non funziona è per lo stesso discorso, prova a disinstallare e reinstallare Google Play Store (sull'emulatore).

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #8 il: 03 Agosto 2015, 15:53:20 CEST »
0
Hai sbagliato a scrivere? Volevi dire di reinstallare il Google Play Store o il Google Play Services?
Come faccio a reinstallare il programma sull'emulatore?


Post unito: 03 Agosto 2015, 17:03:17 CEST
Dall'SDK Manager risulta che i Google Play Services sono installati ma e' disponibile una versione piu'
aggiornata (la 25, allego l'immagine dell'SDK Manager).
Sempre dall'SDK Manager risulta che i seguenti componenti sono installati ma sono disponibli aggiornamenti:
Android Support Repository, Android Support Library, Google Play Services e Google Repository.

Devo aggiornare quei quattro componenti?
Come faccio a aggiornarli?

Se clicco sul bottone "Install 45 packages..." non e' che OLTRE a quei quattro componenti vengono re-installati
altri 41 componenti?

Che significa il bottone "Delete 20 packages..." ?
« Ultima modifica: 03 Agosto 2015, 17:03:17 CEST da oberdank, Reason: Merged DoublePost »

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #9 il: 04 Agosto 2015, 23:48:03 CEST »
0
Qualcuno puo' rispondere alle mie domande?
Come faccio a aggiornare i Play Services e gli altri tre componenti?

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #10 il: 06 Agosto 2015, 10:14:57 CEST »
0
Qualcuno puo' rispondermi?

Offline oberdank

  • Utente normale
  • ***
  • Post: 287
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Core LTE
  • Play Store ID:
    BuzzOne
  • Sistema operativo:
    Windows 8.1
Re:Problema con le mappe
« Risposta #11 il: 10 Agosto 2015, 14:37:29 CEST »
0
Nessuno mi risponde?

Offline LinkOut

  • Utente normale
  • ***
  • Post: 269
  • Respect: +37
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Problema con le mappe
« Risposta #12 il: 10 Agosto 2015, 14:57:28 CEST »
0
Qualcuno puo' rispondere alle mie domande?
Come faccio a aggiornare i Play Services e gli altri tre componenti?

Ti ho già risposto nei post precedenti, Play Service è un'applicazione del telefono.
Se usi l'emulatore e non funziona, allora dovresti provare a re installare le gapps (Google Apps).

Saluti.