Wednesday, November 21, 2012

Mengecek External SDCard atau "External SDCard"

Cara ini berfungsi pada device - device samsung


    public static ArrayList<String> getExternalSDCard()
    {
    String s = "";
    ArrayList<String> result = new ArrayList<String>();
   
    try
    {
   
    Process process = new ProcessBuilder().command("mount").redirectErrorStream(true).start();
    process.waitFor();

    InputStream is = process.getInputStream();
    byte[] buffer = new byte[1024];
    while (is.read(buffer) != -1)
    {
       s = s + new String(buffer);
    }
    is.close();
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }

    String[] lines = s.split("\n");    
    for(int i=0; i<lines.length; i++)
    {
    //path[0]
    if(-1 != lines[i].indexOf("/mnt") && -1 != lines[i].indexOf("vfat") )
    {
       String[] blocks = lines[i].split("\\s");
       Log.i(" SDCARD ","ketemu fvat :" + lines[i]);
       for(int j=0; j<blocks.length; j++)
       {
           if(-1 != blocks[j].indexOf("/") && -1==blocks[j].indexOf("/dev"))
           {
               try{
                File f = new File(blocks[j]);
                if(f.exists()){
                Log.i(" SDCARD","DITAMBAHKAN " + blocks[j]);
                result.add(blocks[j]);
                }
               }catch(Exception e){
               
               }
           }
       }
    }
    else
    {
    Log.d("SDCARD","Not an SDCard / External Storage" + lines[i]);
    }
    }

   
    //try to find fuse file system in /mnt/sdcard
    for(int i=0; i<lines.length; i++)
    {
    //path[0]
    if(-1 != lines[i].indexOf("/mnt/sdcard") && -1 != lines[i].indexOf("fuse rw") )
    {
       String[] blocks = lines[i].split("\\s");
       Log.i(" SDCARD ","found fuse rw :" + lines[i]);
       for(int j=0; j<blocks.length; j++)
       {
           if(-1 != blocks[j].indexOf("/") && -1==blocks[j].indexOf("/dev"))
           {
               try{
                File f = new File(blocks[j]);
                if(f.exists()){
                Log.i(" SDCARD ","DITAMBAHKAN " + blocks[j]);
                result.add(blocks[j]);
                }
               }catch(Exception e){
               
               }
           }
       }
    }
    else
    {
    Log.d(" SDCARD ","Not an SDCard / External Storage" + lines[i]);
    }
    }
   
   
    return result;
    }

Mengecek Apakah Sebuah Method ada dalam Class



Berikut ini adalah contoh kode untuk mengecek apakah sebuah method ada dalam class.  Dalam hal ini, yang dicari adalah setRotation yang belum disupport oleh widget ImageView di android 2.2 dan sudah disupport oleh android 3.0

for(Method m:  ImageView.getClass().getMethods() )
{
String mymethod = "setRotation";
if(mymethod.equalsIgnoreCase(m.getName()))
{
holder.imgListItem.setRotation( (float) item.rotation);
}
}


Tuesday, October 2, 2012

Mengecek Apakah Network Available


public boolean isOnline() {
    ConnectivityManager cm =
        (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnectedOrConnecting()) {
        return true;
    }
    return false;
}

   <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Saturday, March 19, 2011

Android dari kacamata web developer

Dalam pembuatan aplikasi android, penting untuk mengerti bagaimana cara android bekerja. Pengertian ini membutuhkan landasan, nah saat ini saya akan berbicara tentang struktur aplikasi android dari kacamata web developer


Activity
activity adalah bagian utama dari aplikasi android, satu aplikasi bisa memiliki lebih dari satu activity. activity ini sifatnya unik dari aplikasi yang satu ke aplikasi yang lain. android juga mempunya konsep reusable terhadap activity, sehingga aplikasi bisa saling memanfaatkan activity dari aplikasi lain.
activity ini juga diperlakukan layaknya page pada sebuah aplikasi web, karena android akan mencatat activity yang sedang dan pernah dibuka, sehingga tombol back akan selalu menunjuk kepada activity terakhir sebelum activity saat ini dan begitu seterusnya.

Intent
Intent adalah semacam tempat untuk menyimpan informasi yang bisa diteruskan dari satu activity ke activity lainnya. Intent terbagi dua, yaitu Intent bawaan (saya lupa nama tepatnya) dan Intent yang sifatnya variabel yang dibuat/diset didalam activity.
Intent dari kacamata web developer adalah session, sehingga menulis ke intent adalah seperti menulis ke session yang efeknya adalah activity dapat berbagi informasi.
Intent bawaan adalah informasi mengenai status system, misal : baterai,sms,call dan lain - lain. Untuk membaca Intent ini , activity harus di set filternya. Set filter ini dilakukan di file configurasi android.

Demikian penjelasan singkat android dari kacamata web developer, semoga menambah informasi dan semangat untuk mengembngkan aplikasi android.Salam!

Tuesday, October 26, 2010

Android Tool UI Designer

http://www.droiddraw.org/


 

DroidDraw Beta
User Interface (UI) designer/editor for programming the Android Cell Phone Platform.

This tool was written to make my Java programming life easier. It can be used to build graphical user interfaces for the Android cell phone platform. I hope you find it useful for whatever Android/Java cell phone software development projects you have planned!

Android : Menghilangkan Judul Window

Untuk menghilangkan judul window. Tambahkan kode ini di dalam Activity

requestWindowFeature(Window.FEATURE_NO_TITLE);

Monday, September 6, 2010

Mencoba Kirim blog post dari Office 2007

Ternyata di Word 2007 da fitur blog post. Yah lumayanlah fitur ini buat yang males buka blog atau harus copy paste tulisan. Mending langsung nulis di word terus otomatis ke kekirim ke blog.
Tapi fitur ini walopun dipikir – pikir ga penting – penting banget kalo buat jaman sekarang bisa dibilang boleh juga secara orang – orang udah sering tersambung ke internet. Nah klo tulisan ini sampe ke post ke blog berarti percobaan menulis langsung dari microsoft word 2007 berhasil.

Caranya :

File->new->Blog Post. Nanti ada wizard yang nanyain mau dipost kemana.
That's it simple.