Jump to content
Eristoff72

Problème lors de la compilation sur Android Studio

Recommended Posts

je développe une petite appli qui récupère une liste de musée depuis une API JSON.
J'ai commencé le développement de tout ça.

Mais Android Studio me met une erreur lors de la compilation :

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example....listemusee, PID: 8325
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example....listemusee/com.example.....listemusee.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example....listemusee/com.example....listemusee.Musee}; have you declared this activity in your AndroidManifest.xml?
...
...
...
...
etc..

Je cherche tant bien que mal, mais je ne trouve pas d'où peut provenir cette erreur.
L'application se lance et se coupe directement dans l'émulateur.

Voilà mon code:

Mon Main Activity:

 

public class MainActivity extends AppCompatActivity {
 
    ListView List;
    //ArrayAdapter<Musee> museeListe = new ArrayAdapter<>();
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        //List = (ListView) findViewById(R.id.listeMusee);
        //List.setAdapter(Musee.afficherText());
        //this.startActivity(List);
        //List = (ListView) findViewById(R.id.listeMusee);
        setContentView(R.layout.activity_main);
        Intent intent = new Intent(this, Musee.class);
        //intent.putExtra(Musee.afficherText(), R.id.listeMusee);
        intent.putExtra(Musee.afficherText(), R.id.textMusee);
        this.startActivity(intent);
 
    }
 
}

 

Ma classe qui gère ma liste de musée:

 

 
public class Musee extends Activity {
 
    //@Test
 
    EditText message_text;
    public ArrayList<Musee> musees = new ArrayList<Musee>();
 
    private String datasetid;
    private String recordid;
    private String fields;
    private String periode_ouverture;
    private String nom_du_musee;
 
    //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
    public Musee() {
        this.datasetid = "datasetid";
        this.recordid = "recordid";
        this.fields = "fields";
        this.periode_ouverture = "periode_ouverture";
        this.nom_du_musee = "nom_du_musee";
    }
 
    //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
 
    public String getDataSetid() {
        return datasetid;
    }
 
    public String getRecordid() {
        return recordid;
    }
 
    public String getfields() {
        return fields;
    }
 
    public String getPeriode_ouverture() {
        return periode_ouverture;
    }
 
    public String getNom_du_musee() {
        return nom_du_musee;
    }
 
    public void setDataSetid(String datasetid) {
        this.datasetid = datasetid;
    }
 
    public void setRecordid(String recordid) {
        this.recordid = recordid;
    }
 
    public void setFields(String fields) {
        this.fields = fields;
    }
 
    public void setPeriode_ouverture(String periode_ouverture) {
        this.periode_ouverture = periode_ouverture;
    }
 
    public void setNom_du_musee(String nom_du_musee) {
        this.nom_du_musee = nom_du_musee;
    }
 
    public void add(ArrayList<Musee> musees) {
        //Ajouter tout ces attributs dans mon ArrayList
 
    }
 
    //test pour deboger
    public static String afficherText() {
        String texte;
        texte = ("toto");
        return texte;
    }
 
    /**public static listeDesMusees (ArrayList<Musee>) {
        String texte;
        texte = System.out.println("test");
        return ArrayList<Musee> musee;
    }*/
 
}

 

La classe ou je récupère les données de mon API:

 

public class ApiListeMusee {
 
    public static ArrayList<Musee> getMusees() {
 
        ArrayList<Musee> musees = new ArrayList<Musee>();
 
        try {
            String myurl= "Mon Api JSON";
 
            URL url = new URL(myurl);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.connect();
            InputStream inputStream = connection.getInputStream();
            /*
             * InputStreamOperations est une classe complémentaire:
             * Elle contient une méthode InputStreamToString.
             */
            String result = InputStreamOperations.InputStreamToString(inputStream);
 
            // On récupère le JSON complet
            JSONObject jsonObject = new JSONObject(result);
            // On récupère le tableau d'objets qui nous concernent
            JSONArray array = new JSONArray(jsonObject.getString("musées"));
            // Pour tous les objets on récupère les infos
            for (int i = 0; i < array.length(); i++) {
                // On récupère un objet JSON du tableau
                JSONObject obj = new JSONObject(array.getString(i));
                // On fait le lien sur les musées - Objet JSON
                Musee musee = new Musee();
                musee.setDataSetid(obj.getString("datasetid"));
                musee.setRecordid(obj.getString("recordid"));
                musee.setFields(obj.getString("fields"));
                musee.setPeriode_ouverture(obj.getString("periode_ouverture"));
                musee.setNom_du_musee(obj.getString("nom_du_musee"));
                // On ajoute le musée à la liste
                musee.add(musees);
 
            }
 
        } catch (Exception e) {
            e.printStackTrace();
        }
        // On retourne la liste des musées
        return musees;
    }
 
 
}

 

Mon Manifest.xml:

 

 
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example....listemusee">
 
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <uses-permission android:name="android.permission."/>
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>

 

 


J'ai vraiment besoin de résoudre ce problème lors de la compilation, je ne comprend pas, tout semble correct dans mon code.

En espérant que l'on puisse m'aider.

Merci d'avance pour ceux qui pourront m'aider.

 

Share this post


Link to post
Share on other sites

Fil déplacé dans la section "développement", plus appropriée pour ce type de question que "Android en général" 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.






  • Similar Content

    • By EmiX42
      Bonjour, je rencontre depuis un certain temps un problème avec les liens internet que je reçois. Quand je clique sur lien, il ne me propose plus de l'ouvrir avec Google Chrome. Sur l'image, vous pouvez voir ce que ça m'affiche quand je clique sur un lien, que je clique sur l'un ou l'autre des "plus", cela m'ouvre le lien sur mon navigateur Mi, le navigateur de Xiaomi. Si vous savez comment régler le problème, j'attend vos réponses avec impatience en espérant que ce soit concluant.

    • By Ydil
      Bonjour,
       
      Je viens d'acheter ce téléphone et je rencontre un problème bien embêtant.
      Lorsque je le branche à ma voiture pour avoir Android auto, le téléphone est tellement ralenti qu'il est inutilisable même après l'avoir débranché.
      J'avais auparavant un honor 9 d'il y a 4 ans et je n'ai pas ce problème avec android auto dans la même voiture.
       
      Avez-vous déjà rencontré ce problème ?
      Avez-vous des idées que je pourrais tester ?
      Il faut que je trouve une autre voiture avec Android auto afin de voir si cela provient d'une incompatibilité avec ma voiture ou si le problème est ailleurs.
       
      Merci pour votre aide.
       
    • By guigou77
      Bonjour
       
      Suite à l'achat d'un lenovo tab p11 + sous Android 11 impossible d'utiliser un clavier physique Bluetooth. Il reconnaît bien le clavier apairage OK mais quand je vais dans les paramètres de langue pour sélectionné le clavier physique il ne le voit pas. Cela marche avec des tablettes ou smartphone avec des versions moins récente d'android. Des idées svp ? 
    • By Qdrin
      Salut la communautées,
       
      J'ai un problème avec ma tablette Huawei mediapad m6 qui tourne sous harmonyos 2.0
       
      je n'arrive plus à modifier, partager des fichiers ( pdf, jeg..)
      par exemple ;   
              - je fais une capture écran avec la tablette, cela génére un fichier .jeg
                      je peux l'ouvrir avec l'app gallerie mais pas enregistrer les modif que j’effectue dessus
                     quand je veux l’ouvrir avec -Snapseed il affiche " impossible de charger la photos "
                                                                   -Painter l'appli plante direct.
                                                                   -XGimp ça fonctionne.
                 C'est pareil avec une image que je dl sur pixabay, ou un doc en pdf que je dl et que je voudrais ouvrir avec un lecteur pdf
                 je ne peux pas non plus partager le fichier par bluetooth ou mail. En le connectant a mon pc,par cable, je peux récup les fichiers.
                  c'est comme si je n'avait plus l’accès en écriture avec les logiciels non libre comme xgimp.!?!
       
      Bon, voila le bug.. Il y a quelque jour ( avant le bug ) j'ai réinstaller une version de Linux ( zorin os) sur mon pc. J'ai installé l'appli Zorin connect sur mon pc, ma tablette et mon Huawei p30pro pour facilité l'échange entre les supports. Cela marche bien, il a fallut que je donne accès a l'écriture sur ma tablette pour que de mon pc je transfère des données.
      Les problèmes on commencer a ce moment la 😓....
      j'ai regardé des tutos pour modifier l’accès root de la tablette, mais ça n'a pas l'air sans risque.. je préférerais avoir vos avis sur le sujet avant de faire quelque chose.
       
      d'avance je vous remerci
       
       
       
       
                          
    • By zerez
      Bonjour,
      Depuis 2 semaines, impossible de sync google contacts et keep sur mon OPPO A5 2020 (colorOS 7.1) , que j'utilise depuis 6 mois. mon autre smartphone Samsung sync normalement avec mon compte google. J'ai essayé de redémarrer l'OPPO, de me déconnecter/reconnecter. J'ai effacer mon compte google de l'OPPO, puis l'ai de nouveau ajouté. J'ai bien vérifié dans les paramètres (cocher/décocher les options dans Google et dans Users & Accounts). Rien n'y fait. Tout ce que je vois, c'est "trouble syncing. waiting to try again" dans "Google Contacts sync". Toutes les notes de Google Keep ont disparu, et je vois le cercle du chargement tourner sans que rien ne charge...
      En revanche l'app Gmail fonctionne normalement.
      Merci pour tout conseil !
×
×
  • Create New...