1
votes

Problème de HMS Map Kit - Huawei Map ne se charge pas

Quelle pourrait être la raison pour laquelle la carte n'est pas chargée alors que j'effectue toutes les implémentations?


4 Réponses :


1
votes

Il y a plus d'une raison. Je vais mentionner certaines des raisons qui causent ce problème:

  1. Assurez-vous que le kit MAP est activé dans votre application de Huawei Developer.

  2. Assurez-vous d'ajouter la dépendance pour Map Kit dans l'application Build.Gradle.

  3. Assurez-vous que l'empreinte digitale du certificat SHA-256 que vous avez entrée dans Develeper est la même dans l'application.

  4. Assurez-vous que vous avez entré les signaturesConfigs dans l'application build.gradle.


0 commentaires

1
votes

Assurez-vous que tous ces

dans build.gradle au niveau de l'application

private void requestPermission() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    Log.i(TAG, "sdk >= 23 M");
    if (ActivityCompat.checkSelfPermission(this,
            Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED
            || ActivityCompat.checkSelfPermission(this,
            Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
        String[] strings =
                {Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION};
        ActivityCompat.requestPermissions(this, strings, 1);
    }
}
}

}

Dans le manifeste

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-permission 
android:name="com.huawei.appmarket.service.commondata.permission.GET_COMMON_DATA"/>

//To obtain current device location
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

fournir une autorisation en temps réel

dependencies { 
implementation 'com.huawei.hms:maps:4.0.1.302'

Après ce chargement MapView dans la méthode onCreate () ou onCreateView () et appelez getMapAsync () pour enregistrer le rappel.

J'espère que cela fonctionnera.


0 commentaires

0
votes

La raison la plus courante pour laquelle la carte n'est pas chargée est que le client n'a pas envoyé les bonnes informations d'identification au serveur de carte et que le serveur de carte n'a pas renvoyé la réponse avec les données de la carte. Vérifiez si l'API MAP est activée dans l'application dans la console du développeur, si l'empreinte digitale de la signature correspond et si l'application a le fichier agconnect-services.json téléchargé correct dans le répertoire de l'application. Vous pouvez suivre le didacticiel Huawei Map Kit codelabs 。 Assurez-vous de ne manquer aucune étape et comparez votre code et l'exemple de code pour voir s'il y a une différence.


0 commentaires

0
votes

1.) assurez-vous que MapKit est activé dans AppConnect

2.) assurez-vous que votre agconnect-services.json est correctement chargé pour votre saveur sélectionnée

3.) assurez-vous que le nom du package json correspond à l'applicationId de votre application

4.) assurez-vous que l'empreinte digitale du certificat SHA-256 fournie est le même que celui que vous utilisez pour signer l'application

5.) assurez-vous de bien signer l'application

Et jusqu'à présent, c'est la même chose que la réponse existante, alors voici une dernière chose à noter:

6.) assurez-vous que le certificat que vous utilisez est SHA256withRSA (vous voyez ceci lorsque vous pouvez vérifier SHA1, SHA256 et ainsi de suite)

7.) assurez-vous également que lorsque vous disposez de agconnect-services.json , vous définissez ÉGALEMENT la signature du fichier de clés sur la page Services API -> Identifiants.


0 commentaires