Heim >Java >javaLernprogramm >Warum gibt meine Android-App in Android 12 den Fehler „Exportiertes Attribut nicht angegeben' aus?

Warum gibt meine Android-App in Android 12 den Fehler „Exportiertes Attribut nicht angegeben' aus?

DDD
DDDOriginal
2024-12-05 00:26:11557Durchsuche

Why is my Android app throwing an

Dieser Fehler tritt auf, wenn eine Aktivität, ein Dienst, ein Rundfunkempfänger oder ein Inhaltsanbieter das exportierte Attribut nicht explizit angibt. Das exportierte Attribut gibt an, ob eine Komponente gestartet oder durch Komponenten außerhalb der Anwendung gebunden werden kann.

Um dieses Problem zu beheben, müssen Sie das exportierte Attribut hinzufügen und es für alle Komponenten, die Sie verwenden, auf true setzen möchten außerhalb der Anwendung zugänglich sein. Wenn Sie beispielsweise eine Aktivität haben, die von einer anderen Anwendung gestartet werden soll, fügen Sie der Manifestdatei die folgende Zeile hinzu:

<activity
    android:name=".MainActivity"
    android:exported="true" />

Dieser Fehler wird in Android 12 eingeführt, das erfordert, dass Entwickler das exportierte Attribut für alle Komponenten, für die ein Absichtsfilter definiert ist, explizit angeben. Dies liegt daran, dass Android 12 über eine neue Sicherheitsfunktion verfügt, die verhindert, dass Komponenten gestartet oder durch Komponenten außerhalb der Anwendung gebunden werden, es sei denn, das exportierte Attribut ist explizit auf „true“ gesetzt.

Hier finden Sie eine Schritt-für-Schritt-Anleitung dazu So beheben Sie den Fehler:

  1. Öffnen Sie die Manifestdatei (AndroidManifest.xml) für die Anwendung.
  2. Suchen Sie die Komponente, die verursacht den Fehler.
  3. Fügen Sie das exportierte Attribut zur Komponente hinzu und setzen Sie es auf „true“.
  4. Speichern Sie die Manifestdatei und erstellen Sie die Anwendung neu.

Sobald Sie fertig sind Wenn Sie diese Änderungen vornehmen, sollte der Fehler behoben sein.

Das obige ist der detaillierte Inhalt vonWarum gibt meine Android-App in Android 12 den Fehler „Exportiertes Attribut nicht angegeben' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn