Une lib pas de moi ( http://myflex.wordpress.com/2008/11/12/actionscript-cookie-util/),qui est tres utile a l'usage : (je copie le source car la fonction de download est pas tres pratique)
package
{
import flash.external.ExternalInterface;
public class CookieUtil
{
public function CookieUtil()
{
}
private static const FUNCTION_SETCOOKIE:String =
"document.insertScript = function ()" +
"{ " +
"if (document.snw_setCookie==null)" +
"{" +
"snw_setCookie = function (name, value, days)" +
"{" +
"if (days) {"+
"var date = new Date();"+
"date.setTime(date.getTime()+(days*24*60*60*1000));"+
"var expires = '; expires='+date.toGMTString();"+
"}" +
"else var expires = '';"+
"document.cookie = name+'='+value+expires+'; path=/';" +
"}" +
"}" +
"}";
private static const FUNCTION_GETCOOKIE:String =
"document.insertScript = function ()" +
"{ " +
"if (document.snw_getCookie==null)" +
"{" +
"snw_getCookie = function (name)" +
"{" +
"var nameEQ = name + '=';"+
"var ca = document.cookie.split(';');"+
"for(var i=0;i < ca.length;i++) {"+
"var c = ca[i];"+
"while (c.charAt(0)==' ') c = c.substring(1,c.length);"+
"if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);"+
"}"+
"return null;" +
"}" +
"}" +
"}";
private static var INITIALIZED:Boolean = false;
private static function init():void{
ExternalInterface.call(FUNCTION_GETCOOKIE);
ExternalInterface.call(FUNCTION_SETCOOKIE);
INITIALIZED = true;
}
public static function setCookie(name:String, value:Object, days:int):void{
if(!INITIALIZED)
init();
ExternalInterface.call("snw_setCookie", name, value, days);
}
public static function getCookie(name:String):Object{
if(!INITIALIZED)
init();
return ExternalInterface.call("snw_getCookie", name);
}
public static function deleteCookie(name:String):void{
if(!INITIALIZED)
init();
ExternalInterface.call("snw_setCookie", name, "", -1);
}
}
}
Lire les cookies en Flex
Utilisation de SQLite dans Android
Voila un petit mot pour vous faire voir comment utiliser SQLLite dans Android:
d'abord les import :
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
Apres la creation de la table, tout est tres simple vous allez voir :
SQLiteDatabase myDB = null;
myDB=this.openOrCreateDatabase(MyDBName, MODE_PRIVATE, null);
myDB.execSQL("CREATE TABLE IF NOT EXISTS "+MyTable+" (_id INTEGER PRIMARY KEY AUTOINCREMENT,todo VARCHAR);");
ATTENTION, il faut absolument appeler l'id "_id" sous Android pour le binding.
(j'ai peiné 3 jours la dessus :( )
Comme vous voyez, une fois la base de donnée obtenue, la fonction "execSQL" vous permet de tout faire de facon simple.
Faisons quelques INSERT:
myDB.execSQL("INSERT INTO "
+ MyTable
+ " (todo)"
+ " VALUES ('Course');");
myDB.execSQL("INSERT INTO "
+ MyTable
+ " (todo)"
+ " VALUES ('Papier');");
Itou pour delete bien sur.
Maintenant une base de donné qu'on peut pas lire,ca sert a rien !
Voila comment lire le resultat d'un SELECT :
Cursor c = myDB.rawQuery("SELECT * FROM " + MyTable , null);
Vector
int ColumnTODO = c.getColumnIndex("todo");
c.moveToFirst();
if (c != null) {
do {
String todo = c.getString(ColumnTODO);
v.add(todo);
}while(c.moveToNext());
}
Et voila !