Jumat, 09 November 2012

[Apache] setting public_html di ubuntu

Uda banyak sih yang nulis postingan beginian, tp gw cuma pengen nambah catatan aja. Gw pengen posting cara setting public_html di ubuntu menggunakan apache.
Step - stepnya ;
- Buat file public_html ;  mkdir  /home/<user>/public_html

- Masuk ke folder mods-enabled;  cd  /etct/apache2/mods-enabled

- Link beberapa file yang ada di folder mods-enabled ke file yang ada di folder mods-available;
   sudo  ln  -s  ../mods-available/userdir.conf  userdir.conf
   sudo  ln  -s  ../mods-available/userdir.load  userdir.load

- Lalu restart apachenya; sudo  /etc/init.d/apache2  restart

Tujuan dari configurasi ini, supaya tidak perlu naro project web ke folder /var/www , cukup ke folder /home/<user>/public_html, misalkan user gw ardi. Sehingga pas buka browser cukup mengetik url : http://localhost/~ardi

Sekian dulu bye :)

Kamis, 08 November 2012

Update ADT 21 dan SDK r20

Uda lama gak megang android, ternyata android uda ngerilis ADT dan SDK yang baru. Gw ngupdate ADT dan SDK ini mungkin gara2 gak sengaja ada library yang gw update. Nah pas mau ngejalanin gw butuh update ADT versi 20. Padahal ADT gw versi 16, jauh banget yak :D.

Pas gw cari - cari, ternyata uda ada yg versi 21, cuma gak nemu sourcenya. Eh, ada yang bilang langsung dari link updatenya aja

Ini link untuk ADT 21 : https://dl-ssl.google.com/android/eclipse-preview/

Tapi yg kita install itu yang versi 20 ya, yang ini linknya https://dl-ssl.google.com/android/eclipse/

Kenapa gak install yang baru, karena gw pernah coba dan si eclipse minta SDK versi 21 di upgrade. Nah itu dia yg gak gw punya makanya gw downgrade lagi ke 20.

Setelah update ADT nya, kita download jg SDK versi 20 di sini

Root Smartfren Andro HS-E910 Via Recovery

Sekedar nambah catatan, hari ini mau tulis cara root di smartfren hisense E910. Pertama yang wajib dilakukan itu cari file - file seperti dibawah ini
- ADB dan Fastboot, (ADB.zip)
- Driver Fastboot (google-adb-driver.rar)
- CWM Recovery  versi china, recovery.zip
- Update Zip (root-cwm.zip)

Jika sudah dapat file - file pendukung di atas, langkah-langkah selanjutnya:

[Android] : INSTALL_FAILED_INSUFFICIENT_STORAGE error

Buat catatan aja sih, gw pernah nemuin error kyk judul di atas waktu debug di devices langsung. Ternyata caranya mudah. Tinggal tambahin satu tag pada AndroidManifest.xml. Contoh seperti di bawah ini dengan menambahkan android:installLocation="preferExternal".

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.andrewsmith.android.darkness"
    android:installLocation="preferExternal"

Sudah deh, bisa langsung run. Oh iya kalo kurang jelas bisa lihat di sini.

Sudah ya, mau pulang dulu :)

Debug Project Android di Smartfren Hisense E910

Hari ini mau tulis cara debug project android di Smartfren atau menjalankan applikasi android langsung tanpa melalui emulator yang ada di eclipse. Gw melakukannya di OS ubuntu dengan mengunakan eclipse sebagai IDE nya.
Untuk melakukan debug langsung pada device, kita harus tau spesifikasi device tersebut. Dan yang paling perlu diketahui adalah vendor ID nya. Berikut spesifikasi yg gw dapat dari link lain

Jumat, 02 November 2012

Enkripsi AES di Java

     Di hari minggu yang mendung bikin galau ini, gw pengen nulis satu lagi catatan yang kemarin bikin galau jg. Catatan ini mengenai  enkripsi menggunakan AES di platfrom java. Langsung aja ke code 

import java.security.GeneralSecurityException;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;

public class TUtil {

public static byte[] convertStr2Byte() {
String strKey = "11C54021B1232ABD21A2121B10A3112C";
        byte[] byteArray = new byte[strKey.length() / 2];

        for (int i = 0; i < strKey.length(); i += 2) {
            char ch1 = strKey.charAt(i);
            char ch2 = strKey.charAt(i + 1);

Digusur atau Karma Menggusur ?

Pernah lihat banyak orang pinggir rel yang pernah kena gusuran lalu nangis-nangis. Atau pedagang kaki lima yang kena gusuran sampe harus ribut dengan satpol PP untuk mempertahankan lahan jualan mereka. Karena mereka sudah bertahun-tahun disitu dan membayar sewa tempat itu sehingga mereka berhak memiliki lahan itu.
Tapi apa orang yang digusur itu pernah berpikir tentang siapa yang sebelumnya pernah mereka gusur. Mungkin kalau semut bisa ngomong mereka akan sumpah serapah pada manusia yang menggusur mereka. Kalau pun punya tenaga buat ribut, mungkin kejadianya seperti pedagang yang mempertahankan lahannya dari satpol PP.
Dan kalau semut bisa menangis, mungkin tangisnya lebih lebay dari ibu2 yang ngamuk karena dagangannya diangkut. 
Entahlah, apa benar kalau manusia itu hanya bisa mengusik kehidupan makhluk lain ?

Wassalam

Kamis, 01 November 2012

Get Content from Httpresponse

Sorry If the tittle use english, but the content indonesian :senyum. Langsung aja yak kemarin gw punya masalah tentang cara ngambil content response yang ada di web, tp melalui httpresponse. Karena problem gw itu gak ditampilkan di web lagi, melainkan diteruskan lagi ke switching lain. Oke langsung aja, yang perlu kita ambil itu stream terus dijadiin string.

private StringBuilder inputStreamToString(InputStream is) {
    String line = "";
    StringBuilder total = new StringBuilder();
    
    // Wrap a BufferedReader around the InputStream
    BufferedReader rd = new BufferedReader(new InputStreamReader(is));

    // Read response until the end
    while ((line = rd.readLine()) != null) { 
        total.append(line); 
    }
    
    // Return full string
    return total;
}

Kemudian fungsi di atas dipanggil dan passing paramater inputStreamnya. Lihat contoh di bawah ini.
public void run() {
  HttpClient hc = new DefaultHttpClient();
  URI uri = null;
  try {
   uri = URIUtils.createURI("http", "192.168.0.133", 9083, "/retail/request", request_param, null);
   
   System.out.println("uri "+uri);
   
   HttpPost httpost = new HttpPost(uri);  
   HttpResponse response = hc.execute(httpost);
   StringBuilder sb = inputStreamToString(response.getEntity().getContent());
  
   System.out.println("response "+sb);
   
  } catch(URISyntaxException ex) {
   Logger.getLogger(TCashDevelH2H.class.getName()).log(Level.SEVERE, null, ex);
  }catch (IOException ex) {
                 Logger.getLogger(TCashDevelH2H.class.getName()).log(Level.SEVERE, null, ex);
                } 
   finally {
   hc.getConnectionManager().shutdown();
  }
 }

Nah disitu tinggal panggil inputStreamnya aja abis itu print dah contentnya. Btw gw ga masukin full source code karena disitu banyak banget, Di situ gw bikin class TCashDevelH2H dan isinya ada fungsi run dan inputStreamToString.

Sekian dari gw, kalau mau lebih jelas lagi. Lihat link ini aja ya :).

Import Certificate To KeyStore

Pagi ini buat catatan pendek tentang keystore. Kemarin rada riweh gara-gara masalah keystore aja. Yuk langsung aja ke code.
sudo keytool -importcert -keystore jdk1.6.0_12/jre/lib/security/cacerts -alias tcash -file jdk1.6.0_12/jre/lib/security/TCASH.cert

Command di atas untuk mengimport certificate ke keystore dengan nama filenya cacerts dan diletakkan di folder jdk1.6.0_12/jre/lib/security/. Sebelumnya nama certificate yang mau diimport itu TCASH.cert