web-dev-qa-db-fra.com

Erreur de gonflage de la classe com.google.Android.maps.MapView

je suis juste un tutoriel de carte simple http://developer.Android.com/resources/tutorials/views/hello-mapview.html mais en obtenant cette erreur. Je suis nouveau sur Android, j'ai essayé de suivre toute la solution fournie sur Internet, mais sans succès. Aidez-moi, s'il vous plaît. Mon fichier principal .xml est ci-dessous

<?xml version="1.0" encoding="utf-8"?>
<com.google.Android.maps.MapView
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:id="@+id/mapview"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:clickable="true"
    Android:apiKey="***"
/>

et manifestfile est-ce 

18
zeshu

J'ai eu ce problème et résolu par les 2 étapes suivantes:

1) Mettez la ligne suivante dans l'élément application (important) du fichier AndroidManifest.xml.

<uses-library Android:name="com.google.Android.maps" />

2) étendre MapActivity au lieu d’Activity.

prendre plaisir!

51
Bobs

Avez-vous étendu la classe principale en tant que MapActivity?

public class a extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    @Override
    protected boolean isRouteDisplayed() {
        // TODO Auto-generated method stub
        return false;
    }
}
12
Lope Emano

J'ai eu le même problème et environ 3 heures de recherche c'est ce que j'ai fait pour le réparer, Tout dans le manifeste. 

1) Dans mon manifeste, ce code n'était pas à la bonne place

    <uses-library Android:name="com.google.Android.maps" /> 

il devrait être ici, sous

    <application>

comme ça

    <manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
     package="com.example.package.name">
      ...
      <application Android:name="MyApplication" >
        <uses-library Android:name="com.google.Android.maps" />
        ...
      </application>
      ...
    </manifest>

2) J'ai perdu une période quelque part dans mon manifeste

    <activity 
        Android:name="MyClass" //*****should be Android:name=".MyClass"***
        Android:label="@string/app_name" >
        <intent-filter>
            <action Android:name="Android.intent.action.MyClass />

            <category Android:name="Android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

3) Je n'ai pas précisé la version min de sdk qui passe sous 

    <manifest> 

code:

    <uses-sdk Android:minSdkVersion="7" />

4) pour que la carte fonctionne via Eclipse en mode débogage, suivez ces instructions dans votre cmd ou votre terminal http://www.buzztouch.com/resources/Obtaining_a_Google_Maps_API_Key_v1.0.pdf

J'espère que ça aidera quelqu'un

5
tricknology

J'ai eu le problème. Il suffit d’étendre MapActivity au lieu d’Activity.

3
ManJan

Je sais que ce qui suit n’est pas l’erreur du questionneur initial - mais comme mon problème a conduit au même message d’erreur, j’ai pensé pouvoir aussi bien l’ajouter au cas où quelqu'un le rencontrerait à l'avenir.

J'ai vérifié tous les autres bons conseils, mais aucun d'entre eux ne manquait dans mon projet.

Ce qui a finalement résolu le problème pour moi, c’est que j’ai oublié de déclarer MapView dans la mise en page, y compris le nom complet du paquet. Ni Eclipse ni Lint ne m'en ont parlé:

<com.google.Android.maps.MapView
    ...
    />
1
sunadorer

Insérer ceci sur votre déclaration XML de MapView

xmlns:Android="http://schemas.Android.com/apk/res/Android"
1
Jayson Tamayo

L'émulateur sur lequel vous exécutez l'application ne dispose pas de google map jar. alors créez un émulateur à partir de Google API exécutez votre application à cet emplacement.

Voir l'image pour créer un émulateur avec Google API

enter image description here

1
Sunil Kumar Sahoo

travailler avec google maps en plus d'utiliser le tag

<uses-library Android:name="com.google.Android.maps" /> 

dans la balise, utilisez une autre balise

<uses-permission Android:name="Android.permission.INTERNET"/>

à l'intérieur de la balise et vous avez terminé.

Mais rappelez-vous que vous devez exécuter cette application dans AVD compatible avec Google Inc. API, mais pas avec Android API.

Une autre chose importante est de vous assurer que vous utilisez la clé API MD5 au lieu de SHA1 ou de toute autre clé API de protocole.

1
Chandra Sekhar

On obtient cette exception même si toutes les étapes mentionnées ci-dessus sont suivies mais que l'api-key n'est pas spécifié pour MapView Ajoutez simplement la api-key que vous avez obtenue de google

<com.google.Android.maps.MapView
        Android:id="@+id/mapview"
        Android:layout_width="fill_parent"
        Android:layout_height="fill_parent"
        Android:clickable="true" 
         Android:apiKey = "api-key_goes_here"
  >
0
Jeevan