Come sapete dall'ultima campagna fondi sono avanzati circa $ 10'000, allora la società Livecode ha deciso di prolungare la scadenza del progetto per i campi nativi al 23 Giugno.
Al momento (25 Maggio) mancano meno di $ 4'000 per arrivare a quanto richiesto.
Se vi interessa andate qui: https://livecode.com/project/infinite-livecode-native-field-object/
e inviate un contributo.
mercoledì 25 maggio 2016
martedì 24 maggio 2016
Risultati raccolta fondi
La campagna di raccolta fondi ha ottenuto $ 65'000, quindi sono stati finanziati seguenti progetti:
- Migliorare l'architettura dei widget ($ 40'000)
- SQLite per widget ($ 47'000)
- Widget di registrazione audio ($ 55'000)
Siccome sono avanzati $ 10'000, con questi soldi è stata allungata la campagna di raccolta fondi per i campi nativi per mobile. In modo che sia più necessari crearli via codice.
lunedì 23 maggio 2016
Livecode open source
Come sapete livecode è open source. Ora per differenziare meglio le versioni tra gratuita e a pagamento, è nato il sito www.livecode.org, che contiene parecchio materiale solo open source.
giovedì 19 maggio 2016
Little Red Snapper
Oggi vi mostro un programma fatto con livecode, per creare loghi o banner adatti al mobile o prendere screenshot dal proprio computer:
Potete scaricarlo da qui: http://little-red-snapper.software.informer.com/
Potete scaricarlo da qui: http://little-red-snapper.software.informer.com/
lunedì 16 maggio 2016
Mettere la pubblicità nelle nostre app
Se vogliamo, possiamo mettere la pubblicità nelle nostre app. In questo modo possiamo fare qualche guadagno anche distribuendo gratuitamente le nostre app.
Livecode si appoggia ad un sistema che utilizza il comando mobileAdCreate, che si appoggia ad un determinato publisher.
Se preferiamo un altro publisher, che magari ci fornisce più soldi, possiamo utilizzare un'altra tecnica che può essere utilizzate con publisher come https://www.smaato.com/.
Vediamo come funziona.
Innanzitutto ci registriamo per avere i dati di riconoscimento (user, password, publisherId, adSpaceId).
Poi nella nostra app creiamo un browser delle dimensioni dello spazio pubblicitario, potete scegliere di solito fra questi formati:
Il codice per creare un browser 300x250 può essere il seguente:
Notate che l'indirizzo della pagina web da mostrare è una pagina HTML che creiamo noi, ecco il codice da mettere nella pagina HTML, che di solito vi fornisce il publisher:
Ovviamente al posto di xxxxx e yyyyy dovrete mettere le vostre credenziali.
Fatto ciò ricordatevi di impostare la copia del file dentro la app:
Finito.
Livecode si appoggia ad un sistema che utilizza il comando mobileAdCreate, che si appoggia ad un determinato publisher.
Se preferiamo un altro publisher, che magari ci fornisce più soldi, possiamo utilizzare un'altra tecnica che può essere utilizzate con publisher come https://www.smaato.com/.
Vediamo come funziona.
Innanzitutto ci registriamo per avere i dati di riconoscimento (user, password, publisherId, adSpaceId).
Poi nella nostra app creiamo un browser delle dimensioni dello spazio pubblicitario, potete scegliere di solito fra questi formati:
- Medium Rectangle (300x250px)
- Rectangle (180x150px)
- Leaderboard (728x90px)
- Skyscraper (160x600px)
- Half Page Ad (300x600px)
- XXLarge (320x50px & 320x53px)
- XLarge (300x50px & 300x75px)
- Large (216x36px & 216x54px)
- Medium (168x28px & 168x42px)
- Small (120x20px & 120x30px)
- Micro Bar (88x31px)
- Text Ad Units (solo testo)
mobileControlCreate "browser","pubblicita"
mobileControlSet "pubblicita", "visible", true
mobileControlSet "pubblicita", "rect", "0,0,300,250"
mobileControlSet "pubblicita", "url", (specialFolderPath("engine") & "/pubblicita.html")
Notate che l'indirizzo della pagina web da mostrare è una pagina HTML che creiamo noi, ecco il codice da mettere nella pagina HTML, che di solito vi fornisce il publisher:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>SqAdds</title>
</head>
<body>
<div id="smaatoad" style="padding: 0px"></div>
<script type="text/javascript" src="http://soma-assets.smaato.net/js/smaatoAdTag.js"> </script>
<script>
function callBackForSmaato(status){
if(status == "SUCCESS"){
console.log('callBack is being called with status : ' + status);
} else if (status == "ERROR"){
console.log('callBack is being called with status : ' + status);
}
};
SomaJS.loadAd({
adDivId : "smaatoad",
publisherId: xxxxxxxx,
adSpaceId: yyyyyyyy,
dimension: "full_320x480",
age: 16
},callBackForSmaato);
</script>
</body>
</html>
Ovviamente al posto di xxxxx e yyyyy dovrete mettere le vostre credenziali.
Fatto ciò ricordatevi di impostare la copia del file dentro la app:
Finito.
venerdì 13 maggio 2016
Infinite Livecode
Livecode ha lanciato la campagna infininte, di che cosa si tratta?
E' una campagna di raccolta fondi per velocizzare lo sviluppo dei seguenti progetti:
Creare un widget è chiaramente riservato a programmatori esperti che hanno bisogno di comandi molto particolari, ma attualmente il linguaggio per creare i widget è troppo primitivo.
Con questa iniezione di liquidità livecode può accorciare i tempi di sviluppo per finire il linguaggio di programmazione per widget.
E' una campagna di raccolta fondi per velocizzare lo sviluppo dei seguenti progetti:
Migliorare l'architettura dei widget ($ 40'000)
Livecode funziona utilizzando tuta una serie di controlli predefiniti, che possono essere raggruppati per creare controlli più controlli più complessi, come ad esempio i datagrid. L'unico limite e che certe volte servirebbero dei controlli per fare delle cose molto particolari (che non interessano al grande pubblico) o che si appoggino ad delle funzioni che sono presenti solo in un sistema operativo. I widget colmano questa lacuna permettendo di creare controlli molto specifici, che possono appoggiarsi a librerie di C o Java o del sistema operativo.Creare un widget è chiaramente riservato a programmatori esperti che hanno bisogno di comandi molto particolari, ma attualmente il linguaggio per creare i widget è troppo primitivo.
Con questa iniezione di liquidità livecode può accorciare i tempi di sviluppo per finire il linguaggio di programmazione per widget.
SQLite per widget ($ 47'000)
Al momento SQLite è integrato in Livecode, ma non è integrato nel linguaggio per widgetWidget di registrazione audio($ 55'000)
Un widget che permette di registrare l'audio su Android, iOS, Windows, Mac e LinuxWidget campi nativi su mobile ($70'000)
I campi nativi vanno creati al momento su Android e iOS, un widget che rendesse tutto più semplice, che si può spostare e allargare sarebbe molto meglio.Conclusioni
Se tutto ciò vi pare interessante, andate su https://livecode.com/project/infinite-livecode/ e donate quello che ritenete giusto.giovedì 12 maggio 2016
Video con domande e risposte su Livecode 8
Ecco un video su Livecode 8 preparato dal CEO di livecode per una conferenza con domande e risposte:
martedì 10 maggio 2016
Rilasciata nuova versione di livecode 8
E' appena uscita una nuova versione di livecode 8, vediamo le novità.
Migliorati i widget
I widget cono come dei controlli raggruppati che non è possibile modificare.
Sono presenti nella versione gratuita i seguenti widget:
- browser: rende immediato mettere un browser nel nostro programma.
- orologio: un esempio di cosa si può fare coni widget
- barre varie: per fare menu tipicamente su cellulari e tablet
- Grafico: per fare grafici, i dati sono in colonna, separati da virgole. Questo per semplificare l'importazione da database e fogli di calcolo.
- SVG: questo permette di mettere un'immagine vettoriale, è disponibili una lunga lista di icone tra cui scegliere. Potete creare delle icone vostre, impostando la proprietà iconPath secondo le regole HTML per la grafica vettoriale che trovate qui: https://www.w3.org/TR/SVG/paths.html#PathData
- pulsante cellulare: permette di mettere un pulsante ON/OFF stile cellulare
- menu ad albero: per creare i menu ad albero, i dati sono sotto forma di array
Json
Integrata la possibilità di importare ed esportare i dati in forma Json, ora sono presenti le funzioni JsonExport() e JsonImport().Aspetto Desktop
Adesso i programmi generati per desktop per la grafica si appoggiano completamente alle librerie native del desktop, quindi dovrebbe sembrare ancora più naturali. Inoltre gran parte delle icone è stata ridisegnata in SVG, così apparirà perfetta su qualsiasi display.
Mac a 64 bit e 32 bit
Adesso è possibile scegliere se creare il programma su Mac per 32 bit o 64 bit.
Copia e incolla avanzato
Ora il copia e incolla ha molte più opzioni.
Esportazione da makdown a HTML (XHTML)
La funzione mergMarkdownToXHTML() permette di convertire un testo da markDown a HTML.Menu di selezione del colore per iOS
Un menu dedicato per la selezione del colore su iOSUlteriori informazioni sul dispositivo
Per iOS si possono avere ulteriori informazioniAccesso alle funzioni AVAudioRecorder di iOS
Per il microfono, su iOS, sono disponibili anche le classi AVAudioRecoder.Variare la luminosità dello schermo su iOS
Potete sapere e variare la luminosità dello schermo su iOSEffetto sfocato
Si possono sfocare le immagini con il comando blur.Impostazioni di stampa
E' stat inserita la libreria rrhardcopy che permette di impostare delle proprietà di stampa.A pagamento
I seguenti pacchetti sono presenti solo attivando una delle licenze a pagamento:- server FTP dentro i nostri programmi/app
- librerie per Facebook, Twitter e Weibo
- sistema di mappe
- gestione documenti e anteprime per iOS
- la possibilità di usare iAd su iOS
- lettura codice a barre
- sistema di gestione e modifica video per iOS
- popup per iOS
- gestione posizione per iOS, in modo che la appa faccia qualcosa non appena enrati in una zona.
- gestione impostazioni per iOS
- libreria per Dropbox su iOS
- lettore PDf per iOS
- action sheet su iOS
- libreria bluetooth per Mac e iOS
- crittografia AES a 128 bit e 256 bit in modalità CBC o ECB
- ulteriori librerie per le notifiche su iOS
- librerie er la gestione multimediale per iPod e iOS
- librerie per gestine app in background su iOS
- librerie per avere informazione sul collegamento internet su iOS
- librerie per il servizio Bounjour per iOS
- librerie per amazon web service su Mac e iOS
- librerie per Game center per iOS
- ulteriori librerie per i socket su iOS
- riconoscimento biometrico (tipo le impronte digitali) per iOS
- controlli con grafica nativa per iOS
- google spreadsheets api per Mac e iOS
Solo per licenza business
Solo per la licenza business è disponibile un sistema di comunicazione per hardware esterni con iOS. Tipo telecamere, sonde, ecc.martedì 3 maggio 2016
Lavorare con i dispositivi retina
Alcuni prodotti Apple hanno una risoluzione molto elevata, poichè sono forniti di schermi modello retina. Quando si scrivono programmi che girano contemporaneamente su diverse piattaforme com econ livecode, bisogna tenerne conto.
Ad esempio il seguente programma gira benissimo su qualsiasi dispositivo:
Ma se lo voglio scalare per riempire lo schermo, potrei ottenere il seguente risultato su uno schermo ad altissima risoluzione:
Funziona, ma non è perfetto. Se invece mi attivo per adattarlo ad uno schermo retina usano il comando:
ottengo questo:
Come vedete l'effetto è diverso, perchè per compatibilità i dispositivi Apple hanno 2 risoluzioni sui dispositivi retina, con il comando iphoneUseDeviceResolution scegliete di usare quella più alta o quella più bassa.
Per sapere se il display è retina, utilizzate la funzione iphoneUseDeviceResolution(); se il valore è 2 è un retina, se è 1 non lo è.
Ad esempio il seguente programma gira benissimo su qualsiasi dispositivo:
Ma se lo voglio scalare per riempire lo schermo, potrei ottenere il seguente risultato su uno schermo ad altissima risoluzione:
Funziona, ma non è perfetto. Se invece mi attivo per adattarlo ad uno schermo retina usano il comando:
iphoneUseDeviceResolution true
ottengo questo:
Come vedete l'effetto è diverso, perchè per compatibilità i dispositivi Apple hanno 2 risoluzioni sui dispositivi retina, con il comando iphoneUseDeviceResolution scegliete di usare quella più alta o quella più bassa.
Per sapere se il display è retina, utilizzate la funzione iphoneUseDeviceResolution(); se il valore è 2 è un retina, se è 1 non lo è.
Iscriviti a:
Post (Atom)