Liferay mobile SDK parte I

» Scritto da il 21 febbraio 2015 in Android, IOS, Liferay

Liferay mobile SDK parte I
image_pdfimage_print

Come accedere da una app Android o IOS alle nostre portlet custom?

In questa prima parte vediamo come, grazie all’uso di Liferay Mobile SDK, è possibile generare librerie per accedere da una app mobile nativa (per IOS o Android) alle nostre portlet custom.

Nella seconda parte vedremo come poter utilizzare le librerie generate all’interno delle nostre applicazioni mobile native.

Requisiti

  • Server con installato Liferay 6.2
  • Ambiente di sviluppo con Liferay SDK
  • Client Git (per installare Liferay M0bile SDK)

Installazione Liferay Mobile SDK

Per installare Liferay Mobile SDK è necessario scaricare il progetto dal repository git.

Dalla cartella in cui vogliamo installarlo eseguiamo questo comando da terminale

git clone https://github.com/liferay/liferay-mobile-sdk.git

e attendiamo che tutto il progetto sia scaricatoLiferay Mobile SDK Install

Creare un remote service per le proprie entità

Assicuriamoci che per la nostra entità l’attributo remote-service sia impostato a true nel file service.xml della nostra portlet. Ricordiamoci di rigenerare i services per rendere effettive eventuali modifiche

Liferay Mobile SDK services

Andiamo a modificare il file generato [ENTITY_NAME]ServiceImpl.java implementando i servizi che vogliamo rendere disponibili alla nostra app. Anche in questo caso occorre rigenerare i services
Schermata 2015-02-21 alle 10.32.35

Generiamo i file WSSD (Web Service Deployment Descriptor) per la nostra portlet. Liferay Mobile SDK utilizza questi descrittori per poter identificare i servizi remoti messi a disposizione dalla nostra portlet. Per farlo basta utilizzare il comando ant build-wsdd

Assicuriamoci che la nostra portlet sia deployata su un ambiente Liferay avviato. Per verificare i servizi remoti messi a disposizione dalla nostra portlet (e dall’intero portale Liferay) possiamo usare la pagina api/jsonws che la nostra installazione Liferay mette a disposizione

Schermata 2015-02-21 alle 10.49.20

 

 Creare un modulo di generazione per la nostra portlet

Il prossimo passo è quello di creare, all’interno di Liferay Mobile SDK, un “modulo”. Ogni modulo contiene le informazioni necessarie all’SDK per poter generare le librerie mobile relative alla nostra portlet

Dalla cartella principale dove è installato Liferay Mobile SDK eseguite il comando

./gradlew createModule -P=all

Si avvierà un wizard che ci permette di impostare le proprietà del modulo. Per i dettagli su ogni singola proprietà possiamo fare riferimento alla documentazione ufficiale.

Le proprietà più importanti sono

  • Context: il contesto web della nostra portlet
  • Server URL: l’indirizzo completo di porta del server
  • POM Description: descrizione del file POM (solo per generazione .jar) da non lasciare vuoto

Schermata 2015-02-21 alle 10.59.30

Una volta impostate le proprietà Liferay Mobile SDK si connetterà al nostro server, alla ricerca della nostra portlet e genererà il codice che ci serve all’interno della cartella modules\${portlet_context}

Schermata 2015-02-21 alle 11.01.26

Aggiornare i servizi mobile generati

Se andiamo a modificare i servizi remoti della nostra portlet dobbiamo ricordarci sempre di rigenerare anche i servizi mobile generati da Liferay Mobile SDK.

Per fare questo non è necessario ricreare ogni volta un modulo, ma è sufficiente posizionarsi nella cartella del nostro modulo modules/${portlet_context} e lanciare il comando

../../gradlew generate

Generare la libreria per Android

Per generare un file .jar contenente tutte le classi per Android è sufficiente posizionarsi nella cartella del nostro modulo modules\${portlet_context} e lanciare il comando

../../gradlew jar

All’interno della cartella “build/libs” verrà generato il file .jar

Generare la libreria per IOS

Per generare un file .zip contenente tutte le classi per IOS è sufficiente posizionarsi nella cartella del nostro modulo modules\${portlet_context} e lanciare il comando

../../gradlew zip

All’interno della cartella “build” verrà generato il file .zip

Schermata 2015-02-21 alle 11.05.25

Generare la libreria per Windows

Attualmente sono supportati ufficialmente solamente Android e IOS. Esiste però una estensione per Liferay Mobile SDK per generare librerie compatibili con Windows ed la possiamo trovare qui

Per poterla utilizzare bisogna inserire windows all’interno della proprietà Platforms del nostro modulo

Riferimenti e approfondimenti

https://github.com/liferay/liferay-mobile-sdk/blob/master/builder/README.md#properties

https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/making-liferay-and-custom-portlet-services-available-in-your-android-app

https://www.liferay.com/it/documentation/liferay-portal/6.2/development/-/ai/using-custom-portlet-services-in-your-an-liferay-portal-6-2-dev-guide-08-en

https://github.com/liferay/liferay-mobile-sdk

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>