Attendre "android: screenOrientation =" non spécifié "" ou "" fullSensor "" pour cette activité

40

J'ai mis à jour mon Android Studio vers 3.6.0. Maintenant, j'obtiens l'erreur suivante dans mon Manifest.xmlfichier.

Attendre 'android: screenOrientation = "unspecified"' ou '"fullSensor"' pour cette activité afin que l'utilisateur puisse utiliser l'application dans n'importe quelle orientation et offrir une excellente expérience sur les appareils Chrome OS.

Dois-je le convertir en "fullSensor"? Comment puis-je me débarrasser de ce problème?

L'orientation de mes activités est le portrait . Je souhaite continuer à utiliser l'orientation portrait dans mes activités.

Burak
la source
1
ajouter ce drapeau à la balise d'activité du manifeste Android
Lena Bru

Réponses:

48

C'est une sorte d'avertissement pour informer les développeurs que pour les appareils grand écran, il n'est pas bon de restreindre l'orientation. Cependant, si votre application ne prend en charge que le mode portrait, cet avertissement peut être désactivé en procédant comme suit.

Mac: Android Studio -> Préférences

Windows: Fichier -> Paramètres

Alors:

  1. Recherche de "chrome"
  2. Décochez "L'activité est verrouillée sur une orientation"
  3. Appliquer et ok.

Décocher la capture d'écran de l'étape Décocher la capture d'écran de l'étape pour désactiver l'avertissement

Nitesh goyal
la source
A travaillé pour moi. Merci @nitesh
Vinod Pattanshetti
24

Étant donné que votre application ne prend en charge que le portraitmode, vous pouvez ignorer ces erreurs en ajoutant tools:ignore="LockedOrientationActivity"à toutes vos activités ou simplement à la <manifest>balise de niveau supérieur qui s'appliquera à toutes les activités.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:ignore="LockedOrientationActivity"
    ...
    ...
Sohaib
la source
2
Cela devrait être la réponse, car l'accepté ne fonctionne que pour l'utilisateur local. L'ajout de l'ignorer au manifeste permet aux autres développeurs d'ignorer également la modification.
Matthew Strom
1

Si vous utilisez l'orientation portrait pour ne pas avoir à utiliser Bundle pour stocker des données, veuillez apprendre à utiliser Bundle. C'est une façon hacky de ne pas avoir à utiliser Bundle, mais croyez-moi, cela ne résout pas tous vos problèmes. Désolé si je me trompe, mais je pensais qu'en définissant l'orientation de l'écran est une excellente solution de contournement. Cela apporte juste plus de problèmes à long terme

ZeePee
la source
PS. cela me rappelle, vérifiez l'architecture MVVM et ViewModel qui s'occupe du cycle de vie
ZeePee
1

Ajoutez ceci à la balise manifest:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="LockedOrientationActivity"
...
Elías S. Peña T.
la source