Visualizzazione stampabile
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6609954]Ragazzi ho creato un profilo che mi abbassa la tendina delle notifiche quando sblocco il cellulare e fin qui tutto ok ora vorrei aggiungere come condizione allo sblocco del telefono notifica presente,quindi notifica presente + sblocco mi abbassa la tendina delle notifiche.credete sia fattibile?
Inviato dal mio HTC One_M8 usando
Androidiani App
il modo c'è, ma potrebbe avere qualche problema, in quanto applicazioni come tasker, apex, hanno notifiche persistenti, che potrebbero portare a "fallire" il tuo profilo, aprendoti sempre la barra delle notifiche.
Comunque il contesto esiste, e lo trovi sotto UI -- > Notifications :)[/QUOTE]
Grazie x la risposta,ci provo e vediamo il risultato😁😜
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
magho73
[quote name="AlFaver" post=6609987][quote name="magho73" post=6609954]Ragazzi ho creato un profilo che mi abbassa la tendina delle notifiche quando sblocco il cellulare e fin qui tutto ok ora vorrei aggiungere come condizione allo sblocco del telefono notifica presente,quindi notifica presente + sblocco mi abbassa la tendina delle notifiche.credete sia fattibile?
Inviato dal mio HTC One_M8 usando
Androidiani App
il modo c'è, ma potrebbe avere qualche problema, in quanto applicazioni come tasker, apex, hanno notifiche persistenti, che potrebbero portare a "fallire" il tuo profilo, aprendoti sempre la barra delle notifiche.
Comunque il contesto esiste, e lo trovi sotto UI -- > Notifications :)[/QUOTE]
Grazie x la risposta,ci provo e vediamo il risultato😁😜
Edit: non riesco a trovare il contesto ui 😭😭
Inviato dal mio HTC One_M8 usando Androidiani App[/QUOTE]
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
magho73
Edit: non riesco a trovare il contesto ui ����
lo trovi sotto event .... quindi ho paura che tu non possa farlo mmh
ci sono però applicazioni come Notification Listener o Autonotification... potrebbero fare al caso tuo
-
Quote:
Originariamente inviato da
AlFaver
Mitico, dopo guardo tutto! Se dovesse funzionare... Dovrei aver risolto il problema di autovoice e gn
Questo non funzia proprio :( ho provato vari tentativi e in vari metodi, ma nulla
Quote:
Originariamente inviato da
Odysseos
Ho provato a fare un profilo con App. Nella schermata di scelta dell'app ho selezionato solo Services e poi ho scelto Ricerca Vocale. In questo modo Tasker reagisce quando si avvia Google Now pronunciando "Ok Google" ( io ho provato con un flash)
Però il problema è che è difficile gestire il profilo
Magari fai un pò di prove in questa direzione....
Ciao Odysseos, purtroppo mi funziona una volta ogni tanto, a volte nemmeno se ho aperto google, mi flash il messaggio :(
Grazie comunque per l'idea :D
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610035]Edit: non riesco a trovare il contesto ui ����
lo trovi sotto event .... quindi ho paura che tu non possa farlo mmh
ci sono però applicazioni come Notification Listener o Autonotification... potrebbero fare al caso tuo[/QUOTE]
Non ho proprio idea di come si usano 😖
Inviato dal mio HTC One_M8 usando Androidiani App
-
La mia ricerca sugli intent si è finalmente conclusa (era molto più semplice del previsto...quello che cercavo era nella guida di @shev100 rotfl )
L'unico problema è che se uso l'intent come azione, funziona tutto correttamente, ma se lo voglio usare come contesto...nada.
L'intent in questione è
android.intent.action.ASSIST
Allora il profilo che vorrei creare è quello di richiamare AutoVoice con la voce, senza però rinunciare a GoogleNow.
Se in qualsiasi schermata dico "ok google" mi si apre la ricerca vocale (grazie ad apex) .... e a quel punto vorrei far partire AutoVoice.
Avevo così pensato di usare l'intent della ricerca vocale come contesto, ma probabilmente sono io che sbaglio ad impostare il profilo e quindi non va nulla :(
Il profilo per ora è
EVENT --> Intent Received --> android.intent.action.ASSIST
Sbaglio qualcosa ?
-
Quote:
Originariamente inviato da
magho73
Non ho proprio idea di come si usano ��
Inviato dal mio HTC One_M8 usando
Androidiani App
Nemmeno io haha
Ma prova a studiarle un po' e fare qualche esperimento...alla fine il bello sta anche lì
-
-Non trovo il task che mi imposti il telefono su suoneria e vibrazione o solo vibrazione, posso impostare il volume della suoneria a 0 (quindi vibrazione) o da 1 a 10 (quindi suoneria e vibrazione) ma non è la stessa cosa.
Eppoi volevo creare un task che ad una determinata ora mi attivi le sveglie che ho già impostato.
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610120]Non ho proprio idea di come si usano ��
Inviato dal mio HTC One_M8 usando
Androidiani App
Nemmeno io haha
Ma prova a studiarle un po' e fare qualche esperimento...alla fine il bello sta anche lì[/QUOTE]
Hihihihihi hai raagione 😜
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
AlFaver
Questo non funzia proprio :( ho provato vari tentativi e in vari metodi, ma nulla
Ciao Odysseos, purtroppo mi funziona una volta ogni tanto, a volte nemmeno se ho aperto google, mi flash il messaggio :(
Grazie comunque per l'idea :D
Uhm... ho provato anche io. In effetti quello che riscontro è che il profilo funziona solo alla prima istanza, poi non riesce a rilevare "l'uscita" da Google Now e resta sempre attivo. Ho provato anche ad inserire un'azione che disabilità il profilo per poi abilitarlo di nuovo dopo poco tempo, ma anche in questo caso non funziona come dovrebbe...[emoji35]
-
Quote:
Originariamente inviato da
page
-Non trovo il task che mi imposti il telefono su suoneria e vibrazione o solo vibrazione, posso impostare il volume della suoneria a 0 (quindi vibrazione) o da 1 a 10 (quindi suoneria e vibrazione) ma non è la stessa cosa.
Eppoi volevo creare un task che ad una determinata ora mi attivi le sveglie che ho già impostato.
Nella categoria Audio azione Silent Mode. Puoi impostare su On (silenzioso) oppure su Vibrazione
EDIT
Inoltre, in Secure Settings Ver. Pro c'è l'azione Device Settings (la trovi in Actions) che consente di impostare anche la suoneria dopo la vibrazione. Comunque utilizzare la massima cautela quando si utilizza questa azione di Secure Settings. Se non si sa quello che si sta facendo è meglio non farlo [emoji1] per evitare danni.
http://tapatalk.imageshack.com/v2/15...cb5af94bff.jpg
-
Quote:
Originariamente inviato da
page
-Non trovo il task che mi imposti il telefono su suoneria e vibrazione o solo vibrazione, posso impostare il volume della suoneria a 0 (quindi vibrazione) o da 1 a 10 (quindi suoneria e vibrazione) ma non è la stessa cosa.
Eppoi volevo creare un task che ad una determinata ora mi attivi le sveglie che ho già impostato.
Scusami, ma quelle delle sveglie proprio non l'ho capita o_O
C'è la sveglia si attiva quando scatta l'orario X ... no ?
-
Quote:
Originariamente inviato da
AlFaver
Ciao n1mOY ... intanto grazie per il task :D
Chiaramente la mia curiosità ha spinto a provarlo...solamente che non mi inserisce l'appuntamento nel calendario.
Infatti quando lo provo, tappando sul "play" tutti i pallini diventano verdi tranne quello dell'inserimento.
Succede anche a te oppure è il mio telefono ? :)
No! mi funziona tutto.... comunque penso di aver capito da cosa possa dipendere.... oggi vedrò di aggiungere un'altra cosa per rendere più semplice la configurazione del calendario:rolleyes:
Grazie per la segnalazione;)
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610120]Non ho proprio idea di come si usano ��
Inviato dal mio HTC One_M8 usando
Androidiani App
Nemmeno io haha
Ma prova a studiarle un po' e fare qualche esperimento...alla fine il bello sta anche lì[/QUOTE]
Ho provato a impostare una variabile,cosa che ho fatto x la prima volta,mettendo come condizione titolo notifica poi non sapendo cosa mettere a valore ho messo 1,xò credo sia sbagliato xchè la tendina non viene giù né con né senza la presenza di notifiche 😆😆
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
magho73
[quote name="AlFaver" post=6610134][quote name="magho73" post=6610120]Non ho proprio idea di come si usano ��
Inviato dal mio HTC One_M8 usando
Androidiani App
Nemmeno io haha
Ma prova a studiarle un po' e fare qualche esperimento...alla fine il bello sta anche lì[/QUOTE]
Ho provato a impostare una variabile,cosa che ho fatto x la prima volta,mettendo come condizione titolo notifica poi non sapendo cosa mettere a valore ho messo 1,xò credo sia sbagliato xchè la tendina non viene giù né con né senza la presenza di notifiche 😆😆
Edit: scusate x il doppio post ma è colpa della connessione 😝😝
Inviato dal mio HTC One_M8 usando Androidiani App[/QUOTE]
Inviato dal mio HTC One_M8 usando Androidiani App
-
Grazie provo e ti faccio sapere.
-
Quote:
Originariamente inviato da
magho73
Ho provato a impostare una variabile,cosa che ho fatto x la prima volta,mettendo come condizione titolo notifica poi non sapendo cosa mettere a valore ho messo 1,xò credo sia sbagliato xchè la tendina non viene giù né con né senza la presenza di notifiche 😆😆
Edit: scusate x il doppio post ma è colpa della connessione 😝😝
Inviato dal mio HTC One_M8 usando
Androidiani App
[OT] Il quote di Androidiani App ha qualcosa che non va haha [/OT]
Comunque quella variabile è un po' inutile, perchè comunque non è collegata a nulla.
Dovresti crearti un profilo che legge i titoli delle notifiche, e che in base al titolo setti una variabile...
Esempio:
Notifica data da Tasker --> %Notify: 1
Notifica data da Apex --> %Notify: 1
Poi nel task del profilo per espandere la barra metti come prima azione un bel
a1)IF %Notify = 1
a2)stop
a3)ELSE
a4)Barra notifica giù
a5)altri task che vuoi
a6)END IF(<-- importantissimo quando utilizzi degli IF, altrimenti non si chiude il cerchio)
-
Quote:
Originariamente inviato da
N1m0Y
No! mi funziona tutto.... comunque penso di aver capito da cosa possa dipendere.... oggi vedrò di aggiungere un'altra cosa per rendere più semplice la configurazione del calendario:rolleyes:
Grazie per la segnalazione;)
Ma la mia era solo curiosità, per mia fortuna difficilmente ho impegni...al massimo la piscina o qualche reminder, ma uso la sveglia :D
-
Quote:
Originariamente inviato da
Odysseos
Uhm... ho provato anche io. In effetti quello che riscontro è che il profilo funziona solo alla prima istanza, poi non riesce a rilevare "l'uscita" da Google Now e resta sempre attivo. Ho provato anche ad inserire un'azione che disabilità il profilo per poi abilitarlo di nuovo dopo poco tempo, ma anche in questo caso non funziona come dovrebbe...[emoji35]
aaah ma ci salterò fuori...
però mi fa specie che con il send intent funzioni, ma col intent received no :( !!
-
Quote:
Originariamente inviato da
AlFaver
aaah ma ci salterò fuori...
però mi fa specie che con il send intent funzioni, ma col intent received no :( !!
Credo che sia più o meno per lo stesso motivo per cui il profilo di entrata viene rilevato e quello di uscita no... a proposito quale è l'intento ?
-
Quote:
Originariamente inviato da
Odysseos
Credo che sia più o meno per lo stesso motivo per cui il profilo di entrata viene rilevato e quello di uscita no... a proposito quale è l'intento ?
l'intento mio o intendevi l'intent ? hahah
non so se è un errore dato dal correttore :D
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610312] Ho provato a impostare una variabile,cosa che ho fatto x la prima volta,mettendo come condizione titolo notifica poi non sapendo cosa mettere a valore ho messo 1,xò credo sia sbagliato xchè la tendina non viene giù né con né senza la presenza di notifiche 😆😆
Edit: scusate x il doppio post ma è colpa della connessione 😝😝
Inviato dal mio HTC One_M8 usando
Androidiani App
[OT] Il quote di Androidiani App ha qualcosa che non va haha [/OT]
Comunque quella variabile è un po' inutile, perchè comunque non è collegata a nulla.
Dovresti crearti un profilo che legge i titoli delle notifiche, e che in base al titolo setti una variabile...
Esempio:
Notifica data da Tasker --> %Notify: 1
Notifica data da Apex --> %Notify: 1
Poi nel task del profilo per espandere la barra metti come prima azione un bel
a1)IF %Notify = 1
a2)stop
a3)ELSE
a4)Barra notifica giù
a5)altri task che vuoi
a6)END IF(<-- importantissimo quando utilizzi degli IF, altrimenti non si chiude il cerchio)[/QUOTE]
Ti ringrazio x la risposta ma ci ho capito poco 😝,potresti guidarli passo passo x favore così magari riesco a comprendere meglio come funziona
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
AlFaver
l'intento mio o intendevi l'intent ? hahah
non so se è un errore dato dal correttore :D
[emoji1] [emoji1] maledetto correttore automatico... no, volevo sapere quale Intent hai utilizzato
-
Quote:
Originariamente inviato da
Odysseos
[emoji1] [emoji1] maledetto correttore automatico... no, volevo sapere quale Intent hai utilizzato
Ah ecco haha
subito ho provato con:
android.intent.action.ASSIST --> Mi apre google now, ma non la ricerca vocale
android.intent.action.VOICE_ASSIST --> Mi apre la ricerca vocale, perfetto!!!!! Solamente che se lo uso come contesto, quindi INTENT RECEIVED .... non reagisce :(
Eppure ci deve essere il modo di "leggere" quella schermata :(
-
Quote:
Originariamente inviato da
magho73
Ti ringrazio x la risposta ma ci ho capito poco ��,potresti guidarli passo passo x favore così magari riesco a comprendere meglio come funziona
Inviato dal mio HTC One_M8 usando
Androidiani App
Dovresti creare un profilo che va a leggere le notifiche in arrivo (probabilmente ti servirà Notifications Listener oppure AutoNotifications).
Poi a questo profilo associ un task che setta la variabile %Notify ( variabile creata da te) con un valore fittizio, di 1 se la notifica corrisponde ad un'applicazione di cui non ti importa (quindi tasker, apex, la tastiera....) [questo perchè, certe applicazioni come quelle precedentemente citate, creano notifiche persistenti, che farebbero avverare il tuo profilo ogni volta]
Poi fatto ciò devi crearti un altro profilo, quello che volevi crearti in partenza, solamente che come prima azione devi andare a controllare il valore della tua variabile, quindi:
a1) IF %Notify = 1 [quindi se la notifica creata è di apex, etcetc]
a2) STOP [blocchi il task e non succede nulla]
a3) ELSE [altrimenti.....quindi se il valore di %Notify è diverso da 1]
a4) da qua in poi metti le azioni che vuoi che avvengano quando si crea una notifica di qualsiasi altra applicazione
finite le tue azioni
a9) END IF [questo ti serve per chiudere il circuito degli IF]
a10) Variable CLEAR --> %Notify [Puliamo il valore di %Notify per evitare futuri intoppi]
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610458] Ti ringrazio x la risposta ma ci ho capito poco ��,potresti guidarli passo passo x favore così magari riesco a comprendere meglio come funziona
Inviato dal mio HTC One_M8 usando
Androidiani App
Dovresti creare un profilo che va a leggere le notifiche in arrivo (probabilmente ti servirà Notifications Listener oppure AutoNotifications).
Poi a questo profilo associ un task che setta la variabile %Notify ( variabile creata da te) con un valore fittizio, di 1 se la notifica corrisponde ad un'applicazione di cui non ti importa (quindi tasker, apex, la tastiera....) [questo perchè, certe applicazioni come quelle precedentemente citate, creano notifiche persistenti, che farebbero avverare il tuo profilo ogni volta]
Poi fatto ciò devi crearti un altro profilo, quello che volevi crearti in partenza, solamente che come prima azione devi andare a controllare il valore della tua variabile, quindi:
a1) IF %Notify = 1 [quindi se la notifica creata è di apex, etcetc]
a2) STOP [blocchi il task e non succede nulla]
a3) ELSE [altrimenti.....quindi se il valore di %Notify è diverso da 1]
a4) da qua in poi metti le azioni che vuoi che avvengano quando si crea una notifica di qualsiasi altra applicazione
finite le tue azioni
a9) END IF [questo ti serve per chiudere il circuito degli IF]
a10) Variable CLEAR --> %Notify [Puliamo il valore di %Notify per evitare futuri intoppi][/QUOTE]
Ti ringrazio di cuore x la disponibilità ma non ci riesco,potresti simulare passo passo come se lo stesso facendo x tè,se ti va,in modo che possa entrarmi in questa testaccia dura,spero
Inviato dal mio HTC One_M8 usando Androidiani App
-
[quote name="magho73" post=6610585][quote name="AlFaver" post=6610541][quote name="magho73" post=6610458] Ti ringrazio x la risposta ma ci ho capito poco ��,potresti guidarli passo passo x favore così magari riesco a comprendere meglio come funziona
Inviato dal mio HTC One_M8 usando Androidiani App[/QUOTE]
Dovresti creare un profilo che va a leggere le notifiche in arrivo (probabilmente ti servirà Notifications Listener oppure AutoNotifications).
Poi a questo profilo associ un task che setta la variabile %Notify ( variabile creata da te) con un valore fittizio, di 1 se la notifica corrisponde ad un'applicazione di cui non ti importa (quindi tasker, apex, la tastiera....) [questo perchè, certe applicazioni come quelle precedentemente citate, creano notifiche persistenti, che farebbero avverare il tuo profilo ogni volta]
Poi fatto ciò devi crearti un altro profilo, quello che volevi crearti in partenza, solamente che come prima azione devi andare a controllare il valore della tua variabile, quindi:
a1) IF %Notify = 1 [quindi se la notifica creata è di apex, etcetc]
a2) STOP [blocchi il task e non succede nulla]
a3) ELSE [altrimenti.....quindi se il valore di %Notify è diverso da 1]
a4) da qua in poi metti le azioni che vuoi che avvengano quando si crea una notifica di qualsiasi altra applicazione
finite le tue azioni
a9) END IF [questo ti serve per chiudere il circuito degli IF]
a10) Variable CLEAR --> %Notify [Puliamo il valore di %Notify per evitare futuri intoppi][/QUOTE]
Ti ringrazio di cuore x la disponibilità ma non ci riesco,potresti simulare passo passo come se lo stesso facendo x tè,se ti va,in modo che possa entrarmi in questa testaccia dura,spero
Edit: ho comprato autonotification visto che dovrebbe servire
Inviato dal mio HTC One_M8 usando Androidiani App[/QUOTE]
Inviato dal mio HTC One_M8 usando Androidiani App
-
Ciao, volevo chiedere è possibile con tasker far scaricare dei files sul pc di casa mentre sei in un altro posto? Mi spiego :devo andar a fare assistenza a mia nonna in ospedale e nel frattempo volevo far scaricare dei files al pc che è ovviamente a casa. C'è un modo? I files sono su un sito, praticamente sono dei scenari in hd per xplane. Oppure mi conviene usare teamviewer?
-
Quote:
Originariamente inviato da
magho73
[quote name="magho73" post=6610585]Ti ringrazio di cuore x la disponibilità ma non ci riesco,potresti simulare passo passo come se lo stesso facendo x tè,se ti va,in modo che possa entrarmi in questa testaccia dura,spero
Edit: ho comprato autonotification visto che dovrebbe servire
Purtroppo spiegato meglio di così non riesco...
Alla fine ti ho elencato tutti i passaggi da fare con relativi commenti.
Bisogna solamente mettersi lì e provare, provare e riprovare :)
-
Quote:
Originariamente inviato da
AlFaver
[quote name="magho73" post=6610676][quote name="magho73" post=6610585]Ti ringrazio di cuore x la disponibilità ma non ci riesco,potresti simulare passo passo come se lo stesso facendo x tè,se ti va,in modo che possa entrarmi in questa testaccia dura,spero
Edit: ho comprato autonotification visto che dovrebbe servire
Purtroppo spiegato meglio di così non riesco...
Alla fine ti ho elencato tutti i passaggi da fare con relativi commenti.
Bisogna solamente mettersi lì e provare, provare e riprovare :)[/QUOTE]
Grazie,proverò e riproverò sperando di spuntarla
Inviato dal mio HTC One_M8 usando Androidiani App
-
Quote:
Originariamente inviato da
AlFaver
Ma la mia era solo curiosità, per mia fortuna difficilmente ho impegni...al massimo la piscina o qualche reminder, ma uso la sveglia :D
Ecco ora dovrebbe funzionare tutto senza intoppi Calendario..... se hai voglia di provarlo fammi sapere se va;)
Grazie ciao:)
-
Quote:
Originariamente inviato da
N1m0Y
Ecco ora dovrebbe funzionare tutto senza intoppi
Calendario..... se hai voglia di provarlo fammi sapere se va;)
Grazie ciao:)
ottimo ora funzia :D
(l'unico accorgimento/fighineria rimasta è quella di ridimensionare i popup perchè alcuni titoli sono troppo lunghi :D )
-
Quote:
Originariamente inviato da
AlFaver
ottimo ora funzia :D
(l'unico accorgimento/fighineria rimasta è quella di ridimensionare i popup perchè alcuni titoli sono troppo lunghi :D )
Non so se é possibile farlo senza creare nuove scene....
-
Quote:
Originariamente inviato da
N1m0Y
Non so se é possibile farlo senza creare nuove scene....
in teoria nella scheda "scene" dovrebbe crearsi in automatico la scena popup...
ma non ci ho ancora guardato e magari dico un'eresia ... comunque funzia ed è comodo per chi usa spesso il calendario :D
-
Quote:
Originariamente inviato da
AlFaver
in teoria nella scheda "scene" dovrebbe crearsi in automatico la scena popup...
ma non ci ho ancora guardato e magari dico un'eresia ... comunque funzia ed è comodo per chi usa spesso il calendario :D
Per creare un pop up personalizzato, basta creare una scena delle dimensioni desiderate e inserire un element text cui si deve dare il nome Title ( che è appunto quello che conterrà il titolo) e poi un secondo element text cui si deve dare il nome Text1. Salvare, uscire e riavviare tasker ed è pronto.
-
@shev100 o @Odysseos
Allegato 136062
Ora mi é venuto un dubbio peró.... nell'azione 42 viene aggiunto 1 al giorni del mese per incrementare la data.... ma se arriva alla fine del mese darà errore o no?
Per risolvere dovrei convertire la data in secondi e aggiungere 24h sempre in secondi (86400) :rolleyes:.... giusto?
Edit: OK ho risolto:D
Edit2: domandina.... ho una variabile con all'interno un valore x che non conosco.... dovrei prendere questo valore e creare x variabili query (non so se mi sono spiegato).... come potrei fare?
Grazie in anticipo;)
-
Come salvo i progetti che faccio? C è un metodo in automatico che me li salva dove voglio? Si drive magari
-
Quote:
Originariamente inviato da
crokicio
Come salvo i progetti che faccio? C è un metodo in automatico che me li salva dove voglio? Si drive magari
Volendo puoi esportarli direttamente in tasker...
i profili finiranno nella cartella profiles
i task nella cartella tasks
i progetti nella cartella projects ( i progetti li crei tenendo premuto sulla casetta e facendo + )
-
Scusate la banale domanda, la variabile da dove recuperare il nome dell ap wifi a cui sono connesso?
-
Quote:
Originariamente inviato da
Emblema
Scusate la banale domanda, la variabile da dove recuperare il nome dell ap wifi a cui sono connesso?
L'unica che può tornarti utile penso sia questa http://tapatalk.imageshack.com/v2/15...91fdb8eaab.jpg