È possibile attivare o disattivare la funzione di rotazione automatica tramite l'app?


17

Sono stufo di dover attivare la rotazione automatica ogni volta che utilizzo Google Maps per la navigazione. Non so perché non sia solo automaticamente orizzontale come app come Youtube.

C'è un modo per farlo attivare la rotazione automatica SOLO per google maps e non per qualsiasi altra app.

Esiste un'app che lo farebbe o programmasse in qualche modo in Tasker?


@Firelord: sì, normalmente sono in modalità verticale, ma quando voglio usare Google Maps Navigation, lo voglio in automatico. Avere google maps in rotazione automatica sarebbe accettabile se non riesci a isolare la parte di navigazione di esso.
Diskdrive,

Risposte:


22

Questa soluzione richiede che Tasker sia installato e abilitato. Testato su Android 4.2.1, 4.4.2, 5.0.2 e 5.1.1.

  1. Crea un profilo con Applicazione → Mappe
  2. Creare un'azione in Attività del profilo sopra come + → Visualizza → Visualizza rotazione automatica e impostarlo su Attivato .
  3. Abilita profilo e tasker.

Apri Maps e orienta il tuo dispositivo in modalità orizzontale, Maps ti seguirà. Chiudi le Mappe e il dispositivo tornerà a Verticale.

Godere!


O

Inizio modifica: 06/06/2015

C'è un modo è possibile forzare il sistema di andare in modalità Landscape di cambiare un valore in settings.db. (Testato su Android 4.2.1, root richiesto solo con questa modifica.)

  1. Crea un profilo con Applicazione → Mappe .
  2. Creare un'azione in Attività del profilo precedente come + → Codice → Esegui shell e immettere i seguenti dettagli:

    • Comando :settings put system user_rotation 1
    • Seleziona Usa radice .
  3. Crea un altro profilo con l'inverso di Applicazione → Mappe .
  4. Creare un'azione in Attività del profilo precedente come + → Codice → Esegui shell e immettere i seguenti dettagli:

    • Comando :settings put system user_rotation 0
    • Seleziona Usa radice .
  5. Abilita sia i profili sia Tasker.

Le mappe ora passeranno automaticamente in modalità orizzontale indipendentemente dall'orientamento manuale del dispositivo. Una volta chiuso, il dispositivo tornerà in modalità Ritratto. (Si noti che OP ha la funzione di rotazione automatica disattivata, quindi dovrebbe funzionare.)

Questa modifica è pensata per gli utenti come me che su dispositivi lenti devono attendere che l'app segua il loro orientamento. :)

Godere!

O

Il difetto nell'ultimo metodo è che su alcuni dispositivi l'app si aprirà prima in modalità Verticale e quindi forzerà il passaggio in modalità Orizzontale. Tuttavia, l'app può essere avviata direttamente in modalità orizzontale utilizzando un collegamento all'app. Tasker lo consente e lo useremo.

  1. Vai al tuo launcher predefinito → Widget e scegli Collegamento attività .
  2. Seleziona Nuova attività → denominala.
  3. Creare un'azione come + → Codice → Esegui shell e immettere i seguenti dettagli:

    • Comando :settings put system user_rotation 1
    • Seleziona Usa radice .
  4. Crea un'altra azione come +App → Avvia app → seleziona Mappe .
  5. Per cambiare l'icona del collegamento, tocca l'icona quadrata 3x3 (nella parte inferiore della finestra Collegamento attività ) e scegli l'icona.
  6. Ora vedrai un collegamento con l'icona selezionata nel passaggio 4 e il nome scelto nel passaggio 2.
  7. Crea un profilo in Tasker con il contrario di Applicazione → Mappe .
  8. Creare un'azione in Attività del profilo precedente come + → Codice → Esegui shell e immettere i seguenti dettagli:

    • Comando :settings put system user_rotation 0
    • Seleziona Usa radice .
  9. Abilita sia i profili sia Tasker.

Ora goditi la modalità automatica forzata!

Modifica chiusa: 06/06/2015


Per le persone che non conoscono Tasker

  1. Avvia Tasker. (Nota che una volta terminata la modifica di qualcosa in Tasker, tocca una volta il tasto Indietro. Tasker cambierà / chiuderà la finestra attiva e salverà le impostazioni.)
  2. Nella scheda PROFILI tocca +Applicazione → scegli MappeNuova attivitàassegnagli un nome e tocca l'icona a destra.

    Alcune versioni di Android potrebbero richiedere di abilitare il servizio di accessibilità di Tasker. Fallo seguendo le istruzioni lì e torna a Tasker.

    Questo passaggio creerebbe un profilo che verrà attivato ogni volta che Maps viene avviato dall'utente.

  3. Ora siamo sotto l'attività denominata (all'interno della scheda COMPITI). Toccare +Visualizza → Visualizza rotazione automatica → scegliere Onsotto Imposta .

    Stiamo creando un'azione qui che verrà eseguita dopo l'attivazione del profilo.

  4. Torna alla schermata principale di Tasker e vedrai un profilo con il nome dell'app Maps e contrassegnato come Attivo .
  5. Riduci a icona Tasker e vedrai la sua icona nella barra delle notifiche. Dirà No active profile. Il messaggio cambierà una volta avviato Maps.
  6. Bene, avvia Maps e vedi la magia. Orienti il ​​tuo dispositivo e Maps farà lo stesso. Chiudi le Mappe e il dispositivo tornerà in modalità Ritratto.
  7. È sempre possibile interrompere questo comportamento disabilitando o eliminando il profilo in Tasker. Puoi anche nascondere l'icona di notifica di Tasker attraverso le sue impostazioni.

Divertiti con Maps adesso!


amico, questo è esattamente quello che stavo cercando. Saluti per quello!
Diskdrive,

3
Mi vergogno, Firelord! Di solito sono io a portare Tasker a giocare. Questa volta avevo in mente un'app diversa e gli utenti Tasker (come me) non ne avrebbero nemmeno bisogno. Quindi hai sicuramente guadagnato un +1 da me :) E vedrò comunque di portare la mia risposta alternativa, poiché Tasker è a) non libero eb) spesso troppo travolgente per i neofiti;)
Izzy

@Izzy Grazie! E non vedo l'ora di trovare (come sempre) una soluzione elegante per tutti da te. Il motivo per cui non ho esteso i passaggi di Tasker in maggiori dettagli è perché OP è a conoscenza di Tasker. Tuttavia, questo è un errore da parte mia poiché un futuro lettore potrebbe non essere a conoscenza del know-how di Tasker . Guess, dovrei l'ha scritto come questo di seguire con facilità. :)
Firelord

Nessun critico per te (anche se concordo che passaggi più dettagliati potrebbero essere utili ad altri utenti , vedo perché non sono stati richiesti qui). Mi stavo schiaffeggiando la testa non ci avevo pensato :)
Izzy

1
Wow! Un downvote! Questa risposta non può fallire , quindi perché ha ricevuto un downvote? Valuta di spiegare per favore, rispettato downvoter.
Firelord

5

Se sei rootato (e probabilmente non stai usando lollipop), puoi anche usare le Impostazioni app del modulo xposed .

Apri il modulo, cerca e apri Mappe e vai alla sezione Orientamento e seleziona "rotazione automatica". Questo lo costringerà a ruotare automaticamente.


Le funzionalità sembrano promettenti, ma c'è un modo per venire a sapere come questo modulo forza un'applicazione a rimanere in una modalità? Se solo io posso emularlo in Tasker, uno può essere salvato dal rooting o può essere che le impostazioni richiedano il root. IDK!
Firelord

1
Mi dispiace che avrebbe bisogno di studiare il suo codice sorgente (che non ho), quindi non posso ancora dire esattamente come funziona: / A proposito, ecco il codice sorgente per esso-> repo.xposed.info/module/de.robv.android .xposed.mods.appsettings :)
Jaskaranbir Singh

1
+1 Rispetto alla mia risposta "Auto-rotate forzata" è un bel affare, ma in qualche modo si è bloccato la temperatura della CPU . ;)
Firelord

3

Oltre alla soluzione Tasker di Firelord (che preferisco a tutti gli altri citati in questo post - ma Tasker è a) non gratuito eb) spesso un po 'schiacciante soprattutto per i neofiti) e le Impostazioni app di Jaskaranbir (come Tasker , Xposed è spesso un po' troppo per alcuni), c'è una terza opzione disponibile, chiamata PerApp . Ammesso, non è stato aggiornato per un po ', ma potrebbe essere più facile da usare. Prima di JellyBean (<4.1), non è nemmeno necessario il root per regolare la rotazione dello schermo. Ha anche diverse altre impostazioni coperte, quindi potresti dare un'occhiata.


È proprio perché molte di queste app non sono state aggiornate dal 2013, ho chiesto a OP il suo dispositivo e la sua versione di Android in modo che le buone raccomandazioni potessero dare risposte. Indovina, ormai OP è contento di Tasker. :) // Detto questo, posso forzare un'app in modalità orizzontale tramite Tasker? Ho guardato AndroidManifest.xmlsu Maps ma IDT ho visto qualcosa di utile.
Firelord

1
Sono consapevole che l'OP favorisce la soluzione Tasker (come faccio io). La mia risposta è stata solo un'aggiunta per i futuri visitatori alla ricerca di "qualcosa di facile" :) E no, non ho giocato con le cose di orientamento in Tasker, quindi non posso dire. Ti invitiamo a controllare la mia raccolta di risorse Tasker , potrebbero esserci istruzioni o componenti aggiuntivi disponibili :)
Izzy

PerApp non ha funzionato per me (Android Marshmallow)
marmor

3

Puoi utilizzare un'app chiamata Imposta orientamento da "Progetto Eyes-Free". Dose non richiede root e può forzare qualsiasi app a ruotare con qualsiasi orientamento e anche solo in orizzontale e orizzontale in base al sensore. È leggero e anche gratuito. È disponibile nel Google Play Store.

Modifica: Usa Rotation - Orientation Manager invece di "Pranav Pandey". È pienamente compatibile con Lollipop, è gratuito e non richiede root. Questa app ha anche impostazioni per app che l'app precedente non aveva.


+1. "Imposta orientamento" non soddisfa i requisiti della domanda perché applica l'orientamento a livello di sistema. D'altra parte, "Rotation - Orientation manager" fa bene il lavoro in base all'app. Tuttavia, non è stato fluido sul mio dispositivo (vecchio dispositivo) ma fa il lavoro.
Firelord


1

Anche la versione gratuita di MacroDroid può fare il lavoro, anche se preferisco comunque la soluzione usando Tasker .

  1. Installa e avvia MacroDroid .
  2. Tocca Aggiungi macro → Avvio applicazioni / Chiuso → Applicazione avviata → OK → seleziona le tue app per la rotazione automatica → OK .
  3. In Aggiungi azioni , tocca Rotazione automatica attivata / disattivata → Rotazione automatica attivataOK → procedi.
  4. Ignora Aggiungi vincoli → procedi e assegna un nome alla macro come Auto Rotate On.
  5. Crea un'altra macro usando Aggiungi macro → Avvio applicazioni / Chiusa → Applicazione chiusa → OK → seleziona le tue app che hai scelto nel passaggio 2 → OK .
  6. In Aggiungi azioni , tocca Rotazione automatica attivata / disattivata → Rotazione automatica disattivata → OK → procedi.
  7. Ignora Aggiungi vincoli → procedi e assegna un nome alla macro come Auto Rotate Off.

Questo è tutto. La funzionalità è stata raggiunta e puoi provarla avviando e chiudendo le app che hai selezionato in questi passaggi.


1

Anche la versione gratuita di AutomateIt fa il suo lavoro.

  1. Installa e avvia AutomateIt.
  2. In Blocco regole personali , tocca Aggiungi regola → Trigger stato applicazioni → sotto Applicazione tocca le icone dell'obiettivo e scegli le tue app → Avanti .
  3. Nella scheda Azione , tocca Abilita / Disabilita rotazione schermo → Abilita rotazione schermo → Avanti → No → salva la regola.
  4. Crea un'altra regola dal blocco Le mie regole toccando Aggiungi regola → Trigger stato applicazioni → sotto Applicazione tocca le icone dell'obiettivo e scegli le tue app → deseleziona Applicazione attivataAvanti .
  5. Nella scheda Azione , tocca Abilita / Disabilita rotazione schermo → Disabilita rotazione schermo → No → salva la regola.

Questo è tutto. La funzionalità è stata raggiunta e puoi provarla avviando e chiudendo le app che hai selezionato in questi passaggi.


1

E Tasker ti consente persino di aggiungere condizioni come se il mio display è tale, altrimenti fai qualunque cosa. Quindi, in base a ciò, ho trovato la mia soluzione che può sembrare un po 'contorta, ma funziona per me. Poiché il mio dispositivo non è rootato, i comandi del codice shell che richiedono root non funzionerebbero comunque.

Tuttavia, con un ciclo if else (potrebbe essere ulteriormente ridotto poiché avevo aggiunto inizialmente un codice di debug aggiuntivo) puoi semplicemente impostare AutoRotate in base al valore di Orientamento. Quindi memorizzi quei due valori in due variabili chiamate ROTATE e DISPLAY e all'inizio del ciclo if controlli DISPLAY usando un'espressione regolare (ho dovuto farlo perché per qualsiasi motivo il valore di orientamento continuava a saltare tra landscape e landscape-reverse così questo regex si occupa di entrambi):

% DISPLAY ~ R orizzontale (. *)?

Se questa è l'impostazione desiderata, in quel ciclo if or else puoi impostare AutoRotate su Off . Inoltre ho anche installato un plug-in Tasker chiamato AutoInput che mi permette di bloccare i pulsanti home e back, per uscire posso premere l'altro pulsante che fa apparire tutte le mie finestre aperte e semplicemente chiudere l'app Adobe Acrobat che è il trigger per questo compito.

Quindi un grande Yay !! per Tasker. E sì, lo so che sono un po 'in ritardo alla festa, ma vabbè :)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.