react / react/react-native

[android] Unable to add window -- token null is not valid; is your activity running? in Debug

Ouverte
#41,185 6 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Issue: Author Provided Repro Needs: Triage :mag: Platform: Android
Langage dominant
C++
Étoiles
127k
Forks
25.3k
Merge moyen
1 j 23 h
PR mergées (30 j)
4

Description

Description

When starting a project in debug mode, android application crashes with an error
FATAL EXCEPTION: main Process: com.myproject, PID: 18039 android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? at android.view.ViewRootImpl.setView(ViewRootImpl.java:1312) at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:405) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148) at android.widget.PopupWindow.invokePopup(PopupWindow.java:1581) at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1347) at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1313) at com.facebook.react.devsupport.DefaultDevLoadingViewImplementation.showInternal(DefaultDevLoadingViewImplementation.java:131) at com.facebook.react.devsupport.DefaultDevLoadingViewImplementation.-$$Nest$mshowInternal(Unknown Source:0) at com.facebook.react.devsupport.DefaultDevLoadingViewImplementation$1.run(DefaultDevLoadingViewImplementation.java:56) at android.os.Handler.handleCallback(Handler.java:942) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7872) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)

React Native Version

0.72.6

Output of npx react-native info

System:
OS: macOS 14.0
CPU: (8) arm64 Apple M1
Memory: 82.39 MB / 16.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 16.17.0
path: /usr/local/bin/node
Yarn:
version: 1.22.19
path: /opt/homebrew/bin/yarn
npm: Not Found
Watchman: Not Found
Managers:
CocoaPods:
version: 1.12.1
path: /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 23.0
- iOS 17.0
- macOS 14.0
- tvOS 17.0
- watchOS 10.0
Android SDK: Not Found
IDEs:
Android Studio: Not Found
Xcode:
version: 15.0.1/15A507
path: /usr/bin/xcodebuild
Languages:
Java:
version: 18.0.2
path: /usr/bin/javac
Ruby:
version: 2.6.10
path: /usr/bin/ruby
npmPackages:
"@react-native-community/cli": Not Found
react:
installed: 18.2.0
wanted: 18.2.0
react-native:
installed: 0.72.6
wanted: 0.72.6
react-native-macos: Not Found
npmGlobalPackages:
"react-native": Not Found
Android:
hermesEnabled: true
newArchEnabled: false
iOS:
hermesEnabled: true
newArchEnabled: false

Steps to reproduce
  1. Init project
  2. Implement this code to MainActivity.kt
val CUSTOM_EXTRA_NAME = "RELAUNCHED"

override fun onCreate(savedInstanceState: Bundle?) {
        if (!intent.getBooleanExtra(CUSTOM_EXTRA_NAME, false)) {
            this.finish()
            intent.addFlags(FLAG_ACTIVITY_NEW_TASK);
            intent.putExtra(CUSTOM_EXTRA_NAME, true);
            startActivity(intent);
        }
        super.onCreate(null)
    }

  1. Got error
Snack, screenshot, or link to a repository

Link to repo
image

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la reproduction de MainActivity.kt dans le dépôt lié et lancez une exécution de débogage avec React Native 0.72.6. Suivez le chemin signalé à travers DefaultDevLoadingViewImplementation et comparez-le à la séquence personnalisée de redémarrage de l’activité ; le travail est terminé lorsqu’un problème de framework délimité et reproductible est établi, ou lorsque vous documentez pourquoi le rapport n’identifie pas de changement du framework.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
android, kotlin, react-native
Domaine
mobile
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
20/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.