AndroidManifest.xmlce fichier définit les points d'entrée de votre programme, si comme moi vous renommer le nom du package par défaut, ne pas oublier de modifier son nom dans le manifest android:installLocation="preferExternal" ou "auto" pour une installation sur le disque dure la ligne label de l'application se retrouvera dans la gestion des programme pour le supprimer sur votre smartphone, et la partie icon renvoie à un fichier icon.png du sous répertoire drawable de res la ligne label de l'activity se retrouvera dans la liste des programmes à lancer <?xml version="1.0" encoding="UTF-8"?> <manifest android:versionCode="000" android:versionName="0.0.0" package="Psylon.Poker" android:installLocation="preferExternal" xmlns:android="http://schemas.android.com/apk/res/android"> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.BLUETOOTH"></uses-permission> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"></uses-permission> <uses-permission android:name="com.example.bluetooth.PERMISSION_BLUETOOTH"></uses-permission> <application android:label="@string/app_name" android:icon="@drawable/icon"> <activity android:name=".MainActivity" android:label="Poker"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application> </manifest> Son avec nbandroidnbandroid est le plugin pour android sur netbeans Il semble qu'il compresse les fichiers sons des ressources de telle façon que les primitives audio ne peuvent plus le jouer et déclenche un resourcesNotFoundException indiquant qu'il est probablement compressé Pour éviter cette compression, il faut modifier le fichier build-impl.xml sous nbproject ainsi source : http://kenai.com/jira/browse/NBANDROID-50
Logs sous androidPour voir les traces de votre programme, il faut lancer la console de debugging dbms à trouver sous tools du kit android les traces peuvent écrire via import android.util.Log; Log.v|d|i|w|e("emetteur", "message"); mais le system.out s'y affiche également en affichant l'émetteur système à partir du niveau i XMLLa composition d'un dialogue se fait en XML Sous netbeans, les ressources apparaissent sous le répertoire Resources, mais sous le disque et le jar ils seront sous le répertoire res
exemple de fragment d'xml :
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:id="@+id/ordinateurStatus" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="ordinateur status"/> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"> Le fichier xml est compilé pour générer un fichier R.java qui contient les identifiants des objets l'identifiant permet de récupérer la référence d'un objet dans le programme, ex : ordinateurStatus = (TextView) findViewById(R.id.ordinateurStatus); vous pouvez utiliser DroidDraw pour concevoir et tester vos xml Un utilitaire du kit de développement layoutopt.bat permet de vérifier le xml Ajouter une librairieOn peut développer une librairie android
Ajouter dans le build.xml, les recopies des librairies vers le répertoire de construction <target name="-pre-jar"> <copy todir="${build.classes.dir}"> <copy todir="${build.classes.dir}">
Boite de dialogue sans bouton sous androidimport android.app.Activity; import android.content.DialogInterface; import android.app.AlertDialog; public class LangagesList { static AlertDialog.Builder ab; static AlertDialog alert; // il faut avoir un contexte de boite pour pouvoir la fermer static public void show(Activity activity) { AlertDialog.Builder ab = new AlertDialog.Builder(activity); ab.setTitle("Language"); final String langages[] = {"Français","English"}; ab.setSingleChoiceItems(langages, 0, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { ConfigSys.english = whichButton==1; alert.cancel(); // c'est la fonction qui permet de fermer la boite } }); alert = ab.create(); alert.show(); } Installation sur carte sden construction, je n'arrive pas à le faire mar Avant la 2.2, les logiciels ne s'installait que sur la mémoire internet et beaucoup le font encore Pour modifier les directives d'installation il faut installer le sdk, ajouter son chemin dans le path (paramètres systeme, avancés, variables d'envirronement, path, ajouter le sous répertoire tool du répertoire d'installation du sdk ";C:\prg\android-sdk-windows\tools" installer apk_manager copier le programme à modifier xxx.apk dans le répertoire place-apk-here-for-modding, cliquer sur Script.bat faire 22 pour sélectionner le projet, 1 si vous n'avez mis qu'un apk dans le répretoire modding, puis 1 pour dezipper le programme, puis 9 pour le décompiler dans le répertoire projet/nom de votre programme, editer AndroidManifest.xml avec votre editeur de texte favori ajouter "android:installLocation="auto"" ou preferexternal derrière la version
|
|
<zip destfile="${dist.apk}_" update="true" keepcompression="true">
<fileset dir="${package-dex.dex.folder}" includes="${package-dex.dex.file}"/>
</zip>
This only compresses the .dex file but leaves the existing files, including the resources, uncompressed.