Motorola RAZR "Android - Nokia - WinMobile - World Pc - Console"

Guida alla creazione di un'applicazione container, ovvero Come ovviare al limite massimo di 30 applicazioni

« Older   Newer »
  Share  
useful00
view post Posted on 15/1/2006, 17:35





In un mio precedente post avevo fatto notare che il motorola v3 silver (e pare anche un altro modello a detta di un altro utente) non permetta l'installazione di un numero di applicazioni superiore a 30, a prescindere da limitazioni di memoria di storage sul cell. Ho trovato però che le applicazioni J2ME possono contenere più MIDLet (che sarebbero classi che svolgono il ruolo di entry point per un'applicazione) e più entry point significa in sostanza più applicazioni. Questo ci permette di raggruppare più applicazioni in una sorta di applicazione "contenitore" per dirla in parole povere. Ecco i passaggi per ottenere ciò:

Innanzi tutto creiamo una nuova dir e mettiamoci all'interno i vari file jar delle singole applicazioni.

user posted image

Selezioniamo tutti gli archivi e (se avete WinRar) click destro -> extract each archive to separate folder.

user posted image

Adesso apriamo una delle directory di un'app appena estratta, le affibbio adesso per semplicità un nome virtuale, poniamo "A".

user posted image

Nella dir A apriamo la subdir "META-INF" e poi apriamo il file "MANIFEST.MF" con un qualsiasi editor di testo senza preoccuparci del contenuto per adesso.

user posted image

Poi torniamo alla dir principale e apriamo un'altra dir di un'altra app, di nome "B". In B apriamo sempre "META-INF" e poi "MANIFEST.MF" adesso diamo un'occhiata a queste righe. Dovremo trovare delle righe nella forma "MIDlet-x: ..." dove x è un numero crescente che parte da 1. Nella maggior parte delle app (praticamente tutte) esiste solo una riga di questo tipo e inizia quindi con "MIDlet-1: ..."

user posted image

selezioniamo questa riga la copiamo e la incolliamo nell'altro file "MANIFEST.MF" che si trovava nella dir A in modo che stia su una nuova riga separata e incrementiamo x di 1. Adesso cancelliamo la subdir "META-INF" dalla dir B. Procediamo in questo stesso modo come per B per tutte le altre dir delle applicazioni esclusa A appunto, che adesso conterrà una serie di righe nella forma "MIDlet-1: ..." "MIDlet-2: ..." "MIDlet-x: ..." dove x è il numero delle applicazioni che avevamo scompattato. In questo stesso "MANIFEST.MF" della dir A ci sono altre informazioni. Quelle che dovremmo cambiare (anche se non è necessario) sono principalmente:
MIDlet-Name: --qui il nome dell'app contenitrice--
MIDlet-Version: --qui la versione--
Created-By: --l'autore--


user posted image


Adesso salviamo "MANIFEST.MF" della dir A e poi lo chiudiamo. Ora procediamo in questo modo, riapriamo tutte le dir dalla B fino all'ultima (esclusa la A ovviamente) e per ogni dir selezionamo "Modifica -> Seleziona tutto" poi "Modifica -> Copia" e incolliamo tutto nella dir A. Quando fate questo state attenti che non vi siano file con lo stesso nome (o se ci sono devono essere identici) altrimenti se trovate app che usano file diversi con lo stesso nome dovrete metterli in app container diverse. Sto cercando, o meglio cercherò forse in futuro (in caso ne abbia bisogno), un modo per ovviare a ciò ma per adesso non credo sia così impellente, anche perché non è molto comune che le app usino file con nomi identici.
Infine, aprite con winrar il file .jar corrispondente alla dir A (dunque se il nome della dir è "A" come nel nostro caso l'archivio dovrebbe chiamarsi "A.jar") dopodichè selezionate tutti i file all'interno della dir A e li trascinate sull'archivio .jar e date OK alle sostituzioni. Adesso Uppate sul cell l'archivio suddetto e installatelo. Quando avviate l'applicazione si dovrebbe aprire un'ulteriore lista dalla quale selezionare le applicazioni che abbiamo scelto.

note: per alcune applicazioni (come il bookreader) non è possibile fare ciò dato che usa file con nomi sempre uguali. Per ovviare a ciò potete creare un ebook fittizio ad esempio di 30 capitoli decomprimere poi il file .jar e sostituire ai vari textfileN.txt dove N è un numero i capitoli di più libri. Mi spiego meglio con un esempio: avete da textfile1.txt a textfile30.txt bene, da textfile1.txt a textfile12.txt ci mettete i 12 capitoli di un libro di 12 capitoli, poi da 13 a 30 i 18 capitoli di un altro libro, in questo modo avrete due ebook ma utilizzerete solo uno "slot" delle applicazioni. So che non è la stessa cosa, ma meglio di nulla.

Il procedimento l'ho scritto andando a memoria basandomi su come avevo fatto l'altro ieri, non facendolo step by step contemporaneamente dunque potrei essermi scordato qualcosa, anche se ne dubito data la semplicità del tutto. Inoltre ho scritto veloce perdonate quindi eventuali incorrettezze grammaticali. Ho aggiunto degli shot per semplificare al massimo la comprensione del procedimento.

spero che lo troviate utile.

Edited by useful00 - 21/1/2006, 06:04
 
Top
0 replies since 15/1/2006, 17:35   1553 views
  Share