Heim Datenbank MySQL-Tutorial JNI ERROR (app bug): accessed stale local reference

JNI ERROR (app bug): accessed stale local reference

Jun 07, 2016 pm 03:50 PM
app bug error jni sta

http://stackoverflow.com/questions/14765776/jni-error-app-bug-accessed-stale-local-reference-0xbc00021-index-8-in-a-tabl JNI ERROR (app bug): accessed stale local reference 解决办法: Since android 4.0 garbage collector was changed. Now it

http://stackoverflow.com/questions/14765776/jni-error-app-bug-accessed-stale-local-reference-0xbc00021-index-8-in-a-tabl


JNI ERROR (app bug): accessed stale local reference

解决办法:

Since android 4.0 garbage collector was changed. Now it moves object around during garbage collection, which can cause a lot of problems.

Imagine that you have a static variable pointing to an object, and then this object gets moved by gc. Since android uses direct pointers for java objects, this would mean that your static variable is now pointing to a random address in the memory, unoccupied by any object or occupied by an object of different sort. This will almost guarantee that you'll get EXC_BAD_ACCESS next time you use this variable.

So android gives you JNI ERROR (app bug) error to prevent you from getting undebugable EXC_BAD_ACCESS. Now there are two ways to avoid this error.

  1. You can set targetSdkVersion in your manifest to version 11 or less. This will enable JNI bug compatibility mode and prevent any problems altogether. This is the reason why your old examples are working.

  2. You can avoid using static variables pointing to java objects or make jobject references global before storing them by calling env->NewGlobalRef(ref).
    Perhaps on of the biggest examples here is keeping jclass objects. Normally, you'll initialize static jclass variable during JNI_OnLoad, since class objects remain in the memory as long as the application is running.


Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So führen Sie eine Authentifizierung mit echtem Namen in der Jingdong Mall APP durch So führen Sie eine Authentifizierung mit echtem Namen in der Jingdong Mall APP durch Mar 19, 2024 pm 02:31 PM

Wie erhalte ich eine Authentifizierung mit echtem Namen in der Jingdong Mall APP? Jingdong Mall ist eine Online-Shopping-Plattform, die viele Freunde häufig nutzen. Vor dem Einkaufen ist es am besten, dass jeder eine Authentifizierung mit echtem Namen durchführt, damit er den vollständigen Service genießen und ein besseres Einkaufserlebnis erhalten kann. Das Folgende ist die Echtnamen-Authentifizierungsmethode für JD.com. Ich hoffe, dass sie für Internetnutzer hilfreich ist. 1. Installieren und öffnen Sie JD.com und melden Sie sich dann bei Ihrem persönlichen Konto an. 2. Klicken Sie dann unten auf der Seite auf [Mein], um die persönliche Center-Seite aufzurufen obere rechte Ecke, um zur Einstellungsfunktionsoberfläche zu gelangen. 4. Wählen Sie [Konto und Sicherheit], um zur Seite mit den Kontoeinstellungen zu gelangen. 5. Klicken Sie abschließend auf die Option [Authentifizierung mit echtem Namen], um die Informationen zum echten Namen einzugeben . Das Installationssystem erfordert die Eingabe Ihrer echten persönlichen Daten und die Durchführung der Echtnamen-Authentifizierung

Lösen Sie das Problem „Fehler: Unvollständiger Typ ist nicht zulässig' im C++-Code Lösen Sie das Problem „Fehler: Unvollständiger Typ ist nicht zulässig' im C++-Code Aug 26, 2023 pm 08:54 PM

Lösen Sie das „error:incompletetypeisnotallowed“-Problem im C++-Code. Während des C++-Programmierungsprozesses treten manchmal einige Kompilierungsfehler auf. Dieser Fehler wird normalerweise durch die Arbeit mit einem unvollständigen Typ verursacht. In diesem Artikel wird die Ursache dieses Fehlers erläutert und verschiedene Lösungen bereitgestellt. Zunächst einmal: Ich

Was bedeutet sta? Was bedeutet sta? Sep 07, 2023 pm 04:44 PM

STA hat in verschiedenen Bereichen unterschiedliche Bedeutungen, nämlich: 1. In Wi-Fi-Netzwerken steht STA für Endgeräte oder Client-Geräte. 2. Im IEEE 802.11-Standard bezieht sich STA auf Endgeräte in drahtlosen Netzwerken. 3. In der Tourismusbranche. STA steht für kurzfristige Unterbringung; STA steht für Schülerprüfungsverwaltung; STA steht für statistische Analyse; STA als Abkürzung kann in verschiedenen Bereichen andere Bedeutungen haben, und die spezifische Bedeutung sollte entsprechend dem Kontext und dem Hintergrund des spezifischen Bereichs interpretiert werden.

Lösen Sie das Problem „Fehler: erwarteter Initialisierer vor ‚Datentyp'' im C++-Code Lösen Sie das Problem „Fehler: erwarteter Initialisierer vor ‚Datentyp'' im C++-Code Aug 25, 2023 pm 01:24 PM

Lösen Sie das „error:expectedinitializerbefore'datatype‘“-Problem in C++-Code. Beim Schreiben von Code treten manchmal Kompilierungsfehler auf. Einer der häufigsten Fehler ist „error:expectedinitializerbefore‘datatype‘“. Dieser Fehler tritt normalerweise in einer Variablendeklaration oder Funktionsdefinition auf und kann dazu führen, dass das Programm nicht korrekt kompiliert werden kann oder

So lösen Sie die PHP-Warnung: fopen(): Fehler beim Öffnen des Streams: Keine solche Datei oder kein solches Verzeichnis So lösen Sie die PHP-Warnung: fopen(): Fehler beim Öffnen des Streams: Keine solche Datei oder kein solches Verzeichnis Aug 19, 2023 am 10:44 AM

So lösen Sie PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory Bei der Verwendung von PHP-Entwicklung stoßen wir häufig auf einige Dateibetriebsprobleme, darunter „PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory“.

Schritte und Vorsichtsmaßnahmen für die Registrierung einer Apple-ID in Hongkong (genießen Sie die einzigartigen Vorteile des Apple Store in Hongkong) Schritte und Vorsichtsmaßnahmen für die Registrierung einer Apple-ID in Hongkong (genießen Sie die einzigartigen Vorteile des Apple Store in Hongkong) Sep 02, 2024 pm 03:47 PM

Die Produkte und Dienstleistungen von Apple waren schon immer bei Nutzern auf der ganzen Welt beliebt. Die Registrierung einer Hongkong-Apple-ID bietet Benutzern mehr Komfort und Privilegien. Werfen wir einen Blick auf die Schritte zur Registrierung einer Hongkong-Apple-ID und worauf Sie achten müssen. So registrieren Sie eine Apple-ID für Hongkong. Wenn Sie Apple-Geräte verwenden, ist für die Anmeldung bei vielen Anwendungen und Funktionen die Verwendung einer Apple-ID erforderlich. Wenn Sie Anwendungen aus Hongkong herunterladen oder die bevorzugten Inhalte des Hong Kong AppStore genießen möchten, ist es unbedingt erforderlich, eine Hong Kong Apple ID zu registrieren. In diesem Artikel erfahren Sie, wie Sie eine Apple-ID für Hongkong registrieren und worauf Sie achten müssen. Schritte: Sprache und Region auswählen: Suchen Sie auf Ihrem Apple-Gerät die Option „Einstellungen“ und geben Sie ein

Was bedeutet Spielfehler? Was bedeutet Spielfehler? Feb 18, 2024 am 11:30 AM

Was bedeuten Spielfehler? Während des Spielens stoßen wir oft auf unerwartete Fehler oder Probleme, wie zum Beispiel, dass Charaktere stecken bleiben, Aufgaben nicht fortgesetzt werden können, Bildschirmflimmern usw. Diese abnormalen Phänomene werden Game Bugs genannt, also Störungen oder Irrtümer im Spiel. In diesem Artikel untersuchen wir, was Spielfehler bedeuten und welche Auswirkungen sie auf Spieler und Entwickler haben. Spielfehler beziehen sich auf Fehler, die während der Entwicklung oder des Betriebs des Spiels auftreten und dazu führen, dass das Spiel nicht normal läuft oder sich unerwartet verhält. Diese Fehler können darauf zurückzuführen sein

So kündigen Sie das Datenpaket auf der China Unicom-App. So kündigen Sie das Datenpaket auf der China Unicom-App So kündigen Sie das Datenpaket auf der China Unicom-App. So kündigen Sie das Datenpaket auf der China Unicom-App Mar 18, 2024 pm 10:10 PM

Die China Unicom-App kann problemlos alle Anforderungen erfüllen. Sie verfügt über verschiedene Funktionen, um Ihre Anforderungen zu erfüllen. Wenn Sie sie nicht benötigen, können Sie sie hier rechtzeitig abbestellen Um spätere Verluste zu vermeiden, haben viele Menschen bei der Nutzung von Mobiltelefonen manchmal das Gefühl, dass die Daten nicht ausreichen, und kaufen daher zusätzliche Datenpakete. Wenn sie diese jedoch im nächsten Monat nicht möchten, möchten sie das Abonnement sofort kündigen Der Herausgeber erklärt: Wir bieten eine Methode zum Abbestellen, damit Freunde, die sie benötigen, kommen und sie nutzen können! Suchen Sie in der China Unicom-App die Option „Mein“ in der unteren rechten Ecke und klicken Sie darauf. Schieben Sie in der Benutzeroberfläche „Mein“ die Spalte „Meine Dienste“ und klicken Sie auf die Option „Ich habe bestellt“.

See all articles