Jump to content
Nokioteca Forum

[python] Nuova Libreria: Pysys


memoryn70
 Share

Recommended Posts

Ciao a tutti! Per esigenze con un programma (TopTime) e in generale per trovare un metodo per evitare la chiusura delle applicazioni con il tasto rosso, ho creato questa libreria: PYSYS.

Il suo utilizzo è molto semplice, potete anche sempre trovare la documentazione all'interno della libreria!

L'installazione è sempre la solita cosa ovviamente :)

Se un applicazione ha l'attributo sistema, non viene chiusa in caso di poca RAM libera e non viene chiusa con il tasto rosso.

Se è nascosta, invece, non si vede semplicemente nel task manager di default oppure in tutti quegli altri che evitano le app nascoste.

import pysys

pysys.set_system(1) #Setta come sistema

pysys.set_system(0) #Toglie l'attributo sistema

pysys.set_hidden(1) #Setta come nascosto

pysys.set_hidden(0) #Toglie l'attributo nascosto

Per la documentazione:

print pysys.set_system.__doc__

print pysys.set_hidden.__doc__

Note:

-Attenzione a non usare valori diversi da 1 e 0 altrimenti crasha tutto!

-Se volete tutti e due gli attributi settati, dovete prima settare quello di sistema e poi quello nascosto, altrimenti non so perché ma si annulla quello nascosto :shifty:

-Importante: se lo utilizzate all'inizio dello script in un applicazione standalone, eseguite il metodo set_hidden solo almeno 5-6 secondi dopo aver aperto l'applicazione altrimenti non succede niente. Può essere utile cosi:

..

e32.ao_sleep(6,lambda: pysys.set_hidden(1))

..qua continua cmq anche se lo sleep è ancora bloccato

Spero che vi sia utile anche a voi :)

Buon pythoning...:)

Grazie a Il.Socio per le dritte che mi ha dato su come utilizzare i metodi in C++!

PYSYS.zip

Modificato da memoryn70
Link to comment
Condividi su altri siti

Grande memory ottima libreria penso che servirà a molti programmatori!! :wacko:

Mitica funzione.

Tutto OK sia da linea di comando in python che nell'applicazione SaveSms

Nel task con il tasto menu premuto a lungo non si vede, ma con FExplorer si.

Chissà come andrà in Desktoper :)

Link to comment
Condividi su altri siti

Mitica funzione.

Tutto OK sia da linea di comando in python che nell'applicazione SaveSms

Nel task con il tasto menu premuto a lungo non si vede, ma con FExplorer si.

Chissà come andrà in Desktoper :thumbsup_anim:

Sono contento che ti funziona ma soprattutto che ti interessa :thumbsup_anim:

P.S: ti funziona anche da savesms standalone?

Link to comment
Condividi su altri siti

Aggornamento:

ho notato che quando esco da DesktOper, mi da Appl. Chiusa DesktOper.

Se tolgo la linea dove nascondo e la riga di import, all'uscita il programma non da errore.

Ho provato diverse volte e succede cosi'.

Chissa' perchè poi.

Link to comment
Condividi su altri siti

Aggornamento:

ho notato che quando esco da DesktOper, mi da Appl. Chiusa DesktOper.

Se tolgo la linea dove nascondo e la riga di import, all'uscita il programma non da errore.

Ho provato diverse volte e succede cosi'.

Chissa' perchè poi.

è l'import o la riga che nasconde l'app che lo fa crashare in quel modo? perchè magari se è la riga che nasconde l'app, potresti provare, prima che si chiuda desktoper a togliere l'hide dell'applicazione di modo che non sia più nascosta... magari gli da fastidio il fatto che chiudi l'applicazione mentre è nascosta.. altrimenti non saprei che dire cmq è strano ^^

Link to comment
Condividi su altri siti

è l'import o la riga che nasconde l'app che lo fa crashare in quel modo? perchè magari se è la riga che nasconde l'app, potresti provare, prima che si chiuda desktoper a togliere l'hide dell'applicazione di modo che non sia più nascosta... magari gli da fastidio il fatto che chiudi l'applicazione mentre è nascosta.. altrimenti non saprei che dire cmq è strano ^^

Provo e faccio sapere. :thumbs:

Link to comment
Condividi su altri siti

Provo e faccio sapere. :thumbs:

Niente è tuto come dicevo prima.

Ho settato a visibile quando esce ma l'errore si ripete.

La ram ce ne in abbondanza. Prima di uscire con FExplorer mi da più di 6 mega liberi.

[edit]

Ho provato in python da consolle:

import e32

import pysys

e32.ao_sleep(6.0)

pysys.set_hidden(1)

e32.ao_sleep(6.0)

pysys.set_hidden(0)

e32.ao_sleep(6.0)

e poi a chiudere l'applicazione e mi da l'errore.

Ho messo tutte le attese possibili-

Modificato da Oper
Link to comment
Condividi su altri siti

Oi Dok! Semmai ti faccio vedere i sorgenti in C++ e mi dici se è il modo migliore cosi ;)

non saprei neppure io...adesso stavo proprio implementando tutto in TopTime. Se ho problemi o funziona tutto bene scrivo qui ;)

P.S: se ci fossero problemi poi faccio vedere il source a dokkis (+ esperto di me di sicuro :))

Link to comment
Condividi su altri siti

non saprei neppure io...adesso stavo proprio implementando tutto in TopTime. Se ho problemi o funziona tutto bene scrivo qui ;)

P.S: se ci fossero problemi poi faccio vedere il source a dokkis (+ esperto di me di sicuro :))

Allora. Ho problemi solo se le funzioni non le eseguo in un e32.ao_sleep, altrimenti nessun problema! Cioè il problema si verificava solo se cambiavo l'impostazione..boh vabè basta che vada. Per il problema dell'appl.chiusa nn saprei proprio, ho fatto vedere pure a dok ma niente di strano! Sarà il 6600 che se non sbaglio da pure problemi con app.set_exit()...

Modificato da memoryn70
Link to comment
Condividi su altri siti

Per la cronaca: funziona tutto bene anche standalone (@ kork: stai tranquillo quindi :thumbs:) mi pare (poi proverò meglio)...cmq quando poi esco dalla shell mi si riavvia il telefono!!

Probabilmente andrebbero messe nel file .app...

EDIT: @Oper: prova a chiudere l'applicazione con os.abort()...

EDIT2: con app.set_exit() con uno dei metodi utilizzati, alla chiamata dopo un po si riavvia il sistema...

E' molto strano! Cmq si vedrà...

Adesso stavo cercando di capirci di più perché purtroppo non mi hanno ancora convinto queste funzioni...^_^

EDIT∞: ora provo a cambiare alcune cose nella libreria stessa

Modificato da memoryn70
Link to comment
Condividi su altri siti

Insomma io quando le imposto se cerco di modificare lo stato in certe condizioni il programma crasha, ma quando lo avvio nessun problema. Quindi nelle impostazioni di TopTime se si modificano questi due parametri, chiede di riavviare il programma. Il riavvio l'ho fatto tramite un exe che dopo 5 secondi avvia l'app TopTime...se a qualcuno serve una cosa simile basta che mandi un PM o scriva qui che io preparo l'exe :lmaosmiley:

Link to comment
Condividi su altri siti

  • 2 settimane dopo...

Guarda qui se può esserti utile:

http://wiki.forum.nokia.com/index.php/How_...on_red_keypress

Non è la stessa cosa che settarla di sistema, perchè cmq in caso di poca ram viene chisa tra la prime, però simula un po' quello che la tua lib consente di fare. Al massimo cmq riusciresti ad inserirla nella tua lib? Potrebbe tornare sempre utile...

EDIT: Ci sto provando io...sembra riuscirci, in caso contrario lascio la parola a te!

Modificato da giuppe92
Link to comment
Condividi su altri siti

@memory

vedi come devi fare ma la libreria in questione la devi rendere stabile. :)

E' proprio una bella cosa mettere nascosta l'icona nel task manager.

Sto facendo un programma che gli farebbe piacere averla.

[edit]

l'ho inserita così com'è e ho messo os.abort() per uscire e non da problemi, però voglio che oltre che sul mio cell funzioni anche su altri e poichè abbiamo visto che non è stabile....

Modificato da Oper
Link to comment
Condividi su altri siti

Allora per la libreria ho visto e funziona naturalmente, solo che così facendo cambia prorpio il metodo di uscita e quindi anche il softkey sinistro non funziona. Ho provato con app.exit_key_handler ma non funziona. Vediamo di tirarci su qualcosa di utile, lascio a voi la parola.

Link to comment
Condividi su altri siti

Ah ! Ottima cosa...ecco dove è la funzione di exit che viene passata quando il sistema chiede la chiusura (non kill) alla applicazione stessa. beh allora questo problema è risolto...

Per gli altri do poi 1 occhiata perché anche a me pare strano

Link to comment
Condividi su altri siti

Please sign in to comment

You will be able to leave a comment after signing in



Accedi Ora
 Share

×
×
  • Crea Nuovo...

Informazione Importante

Questo sito utilizza i cookie per analisi, contenuti personalizzati e pubblicità. Continuando la navigazione, accetti l'utilizzo dei cookie da parte nostra | Privacy Policy