June 8, 2016

Published 3:35 PM by with 0 comment

Bikin Sendiri Deret Hitung Fibonansi Menggunakan PHP

Fibonansi merupakan salah satu perhitungan dari Mr. Matematika.. yaitu penjumlahan dengan angka disebelahnya.. dan dapat dipastikan jika Anda melamar di suatu perusahaan, pasti Anda akan menemukan soal seperti ini pada waktu menjalani Tes Psikotes.. Contohnya :
1 1 2 3 5 8 13 21 34 55 ... dst..

Maksudnya apa ikih?.. gini..
1 + 1 = 2..
1 + 2 = 3..
2 + 3 = 5..
3 + 5 = 8..
5 + 8 = 13..
8 + 13 = 21..

Ngerti kan?.. jadi penjumlahan dengan menjumlahkan angka dengan angka disebelahnya.. Nah dan sialnya nih.. Pelamar Khususnya yang melamar sebagai Programmer terlalu menganggap remeh soal tersebut..

Pernah suatu ketika penulis pernah mendengar keluhan dari si Interviewer.. ada seorang pelamar menganggap dirinya Jago (Master PHP), meminta gaji yang lumayan WAH!.. tapi ketika di-Tes suruh buat Program sederhana (fibonansi) menggunakan PHP seperti itu saja tidak bisa.. kacau.. bahkan menyerah, dan tidak dapat menyelesaikan tes tersebut.. Kandas sudah Impiannya untuk diterima..

Kebanyakan praktek membuat Program Fibonansi PHP banyak dilakukan oleh perusahaan (menurut pengalaman saya setelah 2x melamar kok Tesnya cuma gini-gini aja (fibonansi melulu).. ga ada yg lain ya? apa memang sudah Standar Tes seperti itu?.. tapi tidak semuanya loh.. kadang ada juga yang diminta untuk membuat sistem Login MultiUser dengan Menggunakan Cookie, dll..).. namanya juga Tes..

Nah, untuk memberikan pengetahuan bagi kawan-kawan.. saya akan men-share bagaimana sih membuat Deret Angka Fibonansi menggunakan PHP.. berikut Source Codenya :
Buat sebuah folder terlebih dahulu dengan nama bebas (terserah Anda).. didalam folder C:/xampp/htdocs. kemudian buat file PHP dengan nama index.php yang dijadikan sebagai Form untuk memasukkan angka didalam folder yang telah dibuat tersebut.. kemudian tuliskan kode berikut :

<form method="post" action="index.php">
Masukkan Jumlah Angka : <input type="text" name="angka" size="5"> <input type="submit" value="Go">
</form>

<?php
include "fibonansi.php";
?>

Sepertinya mudah bukan kode untuk Form-nya..
Selanjutnya buat file untuk prosesnya, yaitu fibonansi.php dan simpan ke dalam satu folder bersama-sama dengan index.php, kemudian ketikkan kode berikut :

<?php
function fibonansi($n) {
    $a = 1;
    $b = 1;
    $value = $a." ".$b." ";
   
    for ($i=3;$i<=$n;$i++){
        $jml = $a + $b;
        $value .= $jml." ";
        $a = $b;
        $b = $jml;
    }

    return $value;
}

$angka = $_POST[angka];
echo "Deret Fibonansi $angka adalah : "."<br><b>".fibonansi($angka)."</b>";
?>

Cukup mudah bukan?..

Semoga pembahasan ini dapat bermanfaat bagi Anda, khususnya bagi yang ingin melamar sebagai Programmer PHP..
Read More
      edit
Published 3:31 PM by with 0 comment

Sebab Error 1053 pada Gammu

Wah, sudah berapa lama ya saya tidak update?.. bagaimana kawan kabarnya?....
kali ini saya ingin share mengenai Error 1053 yang sering dihadapi oleh pemula dalam menjalankan start Gammu SMSD. menurut pengalaman saya setidaknya ada 3 hal yang harus diperhatikan untuk menghindari terjadinya error 1053, diantaranya :
  1. Gunakan Struktur tabel Gammu sesuai versi-nya. hal ini disebabkan versi setiap gammu berbeda-beda terhadap struktur tabelnya.
  2. Pastikan penamaan databasenya benar saat konfigurasi database dalam file smsdrc.
  3. Pastikan Port dan Connection nya juga terkoneksi dengan benar dalam file smsdrc.
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- ads01 -->
<ins class="adsbygoogle"
     style="display:inline-block;width:336px;height:260px"
     data-ad-client="ca-pub-2273119288290992"
     data-ad-slot="7563110866"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

Jika Anda sudah terlanjur menginstal gammu SMSD, saat Anda melakukan perubahan kode pada file Gammurc ataupun Smsdrc, maka Anda juga harus me-reset kembali Service Gammu SMSD nya. dengan cara Un-Install, kemudian Instal kembali.

Untuk melakukan instalasi, dikerjakan pada halaman command line prompt / cmd :
gammu-smsd.exe -c smsdrc -i

Untuk melakukan Un-Instal, dapat mengetikkan kode :
gammu-smsd.exe -c smsdrc -u

Atau jika Anda ingin mendapatkan info lengkap tentang cara penginstalan, dapat membaca buku terbaru saya yang berjudul Step by Step Membangun Aplikasi SMS dengan PHP dan MySQL.

Semoga artikel singkat ini dapat memberi pencerahan untuk Anda yang mengalami solve problem ini..



Read More
      edit

April 13, 2016

Published 7:04 PM by with 0 comment

Membuat Aplikasi Perekam Suara di Android Dengan Eclipse IDE

sesuai judul postingan kali ini tentang tutorial pembuatan aplikasi perekam suara deng eclispe di android, denagn memanfaatkan class MediaRecorder yang sudah ada di Android SDK.
kita tinggal memanggil class MediaRecorder untuk bisa merekam suara atau video. langsung aja yaa...
pertama buat prokject baru di Eclipse dan beri nama AudioCapture, set target API ke yang paling baru
  • Aplication Name : Audio Capture
  • Project Name : com.coba.AudioCapture
  • Target SDK : 17 API
lalu ubah MainActivity.java seperti di bawah ini
package com.coba.audiocapture; 
 
import java.io.File; 
import java.io.IOException; 
 
import android.media.MediaPlayer; 
import android.media.MediaRecorder; 
import android.os.Bundle; 
import android.os.Environment; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.Toast; 
 
public class MainActivity extends Activity { 
 
   private MediaRecorder myAudioRecorder; 
   private String outputFile = null; 
   private Button start,stop,play; 
   @Override 
   protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
      start = (Button)findViewById(R.id.button1); 
      stop = (Button)findViewById(R.id.button2); 
      play = (Button)findViewById(R.id.button3); 
 
      stop.setEnabled(false);       
      play.setEnabled(false); 
      outputFile = Environment.getExternalStorageDirectory(). 
      getAbsolutePath() + "/myrecording.3gp";; 
 
      myAudioRecorder = new MediaRecorder(); 
      myAudioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
      myAudioRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
      myAudioRecorder.setAudioEncoder(MediaRecorder.OutputFormat.AMR_NB); 
      myAudioRecorder.setOutputFile(outputFile); 
 
   } 
 
   public void start(View view){ 
      try { 
         myAudioRecorder.prepare(); 
         myAudioRecorder.start(); 
      } catch (IllegalStateException e) { 
         // TODO Auto-generated catch block 
         e.printStackTrace(); 
      } catch (IOException e) { 
         // TODO Auto-generated catch block 
         e.printStackTrace(); 
      } 
      start.setEnabled(false); 
      stop.setEnabled(true); 
      Toast.makeText(getApplicationContext(), "Mulai Merekam", 
    Toast.LENGTH_LONG).show(); 
 
   } 
 
   public void stop(View view){ 
      myAudioRecorder.stop(); 
      myAudioRecorder.release(); 
      myAudioRecorder  = null; 
      stop.setEnabled(false); 
      play.setEnabled(true); 
      Toast.makeText(getApplicationContext(), "Merekam Suara Berhenti", 
      Toast.LENGTH_LONG).show(); 
   } 
   @Override 
   public boolean onCreateOptionsMenu(Menu menu) { 
      getMenuInflater().inflate(R.menu.main, menu); 
      return true; 
   } 
   public void play(View view) throws IllegalArgumentException,    
   SecurityException, IllegalStateException, IOException{ 
    
   MediaPlayer m = new MediaPlayer(); 
   m.setDataSource(outputFile); 
   m.prepare(); 
   m.start(); 
   Toast.makeText(getApplicationContext(), "Memutar Rekaman", 
Toast.LENGTH_LONG).show(); 
 
   } 
 
} 
lalu untuk tampilannya ubah activity_main.xml yang ada di layout seperti di bawah ini
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
   xmlns:tools="http://schemas.android.com/tools" 
   android:layout_width="match_parent" 
   android:layout_height="match_parent" 
   android:paddingBottom="@dimen/activity_vertical_margin" 
   android:paddingLeft="@dimen/activity_horizontal_margin" 
   android:paddingRight="@dimen/activity_horizontal_margin" 
   android:paddingTop="@dimen/activity_vertical_margin" 
   tools:context=".MainActivity" > 
 
   <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentRight="true" 
      android:layout_alignParentTop="true" 
      android:layout_marginTop="32dp" 
      android:text="@string/Recording" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
 
   <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="100dp" 
      android:layout_height="100dp" 
      android:layout_below="@+id/textView1" 
      android:layout_centerHorizontal="true" 
      android:layout_marginTop="37dp" 
      android:scaleType="fitXY" 
      android:src="@android:drawable/presence_audio_online" /> 
 
   <Button 
      android:id="@+id/button1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/imageView1" 
      android:layout_marginTop="67dp" 
      android:layout_toLeftOf="@+id/imageView1" 
      android:onClick="start" 
      android:text="@string/start" /> 
 
   <Button 
      android:id="@+id/button2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/button1" 
      android:layout_alignBottom="@+id/button1" 
      android:layout_alignRight="@+id/textView1" 
      android:layout_marginRight="40dp" 
      android:onClick="stop" 
      android:text="@string/stop" /> 
 
   <Button 
      android:id="@+id/button3" 
      style="?android:attr/buttonStyleSmall" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/button2" 
      android:layout_centerHorizontal="true" 
      android:onClick="play" 
      android:text="@string/play" />  
</RelativeLayout> 
terus ubah string.xml menjadi sperti ini
<?xml version="1.0" encoding="utf-8"?> 
<resources> 
 
   <string name="app_name">AudioCapture</string> 
   <string name="action_settings">Settings</string> 
   <string name="hello_world">Hello world!</string> 
   <string name="Recording">Aplikasi Perekaman Suara</string> 
   <string name="start">start</string> 
   <string name="stop">stop</string> 
   <string name="play">play</string> 
 
</resources> 
yang terakhir AndroidManifest.xml menjadi seperti di bawah ini
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
   package="com.coba.audiocapture" 
   android:versionCode="1" 
   android:versionName="1.0" > 
 
   <uses-sdk 
      android:minSdkVersion="10" 
      android:targetSdkVersion="17" /> 
      <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
   <uses-permission android:name="android.permission.RECORD_AUDIO" />  
 
   <application 
      android:allowBackup="true" 
      android:icon="@drawable/ic_launcher" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme" > 
      <activity 
         android:name="com.coba.audiocapture.MainActivity" 
         android:label="@string/app_name" > 
         <intent-filter> 
            <action android:name="android.intent.action.MAIN" /> 
 
            <category android:name="android.intent.category.LAUNCHER" /> 
         </intent-filter> 
      </activity> 
   </application> 
 
</manifest> 
waktunya test sambungkan smartphone agan ke PC jangan lupa USB Debug nya di nyalain, terus run as android aplication di eclipse nya...
cukup segini dlulu, maaf kalo banyak kekurangan dalam postingan ini. semoga postingan ini bermanfaat....
Read More
      edit
Published 7:03 PM by with 0 comment

Aplikasi Kirim SMS Sederhana dengan Eclipse

hi gusy......whats up.....whats down....!!! hehe kayak uus aja....
Kali ini saya mau nulis tentang tutorial buat aplikasi kirim sms di android, buat kalian yang udah expert di android ini bukan potingan yang cocok buat kalian. potingan ini diperuntukan buat kalian yang baru belajar pemrogramman android kayak saya.....
kenapa gak bikin di android studio? jujur aja saya gak paham cara pakek android studio hehe....

langsung aja buka eclipsee dan buat project baru....kasih nama aplikasi sama projectnya bebas target sdk nya Android sdk 17.
pertama buat MainActivity.java ubah menjadi seperti dibawah:
package com.example.sendsmsdemo; 
 
import android.os.Bundle; 
import android.app.Activity; 
import android.telephony.SmsManager; 
import android.util.Log; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 
 
public class MainActivity extends Activity { 
 
 Button sendBtn; 
 EditText txtphoneNo; 
 EditText txtMessage; 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 setContentView(R.layout.activity_main); 
 
 sendBtn = (Button) findViewById(R.id.btnSendSMS); 
 txtphoneNo = (EditText) findViewById(R.id.editTextPhoneNo); 
 txtMessage = (EditText) findViewById(R.id.editTextSMS); 
 
 sendBtn.setOnClickListener(new View.OnClickListener() { 
 public void onClick(View view) { 
 sendSMSMessage(); 
 } 
 }); 
 } 
 protected void sendSMSMessage() { 
 Log.i("Send SMS", ""); 
 
 String phoneNo = txtphoneNo.getText().toString(); 
 String message = txtMessage.getText().toString(); 
 
 try { 
 SmsManager smsManager = SmsManager.getDefault(); 
 smsManager.sendTextMessage(phoneNo, null, message, null, null); 
 Toast.makeText(getApplicationContext(), "SMS sent.", 
 Toast.LENGTH_LONG).show(); 
 } catch (Exception e) { 
 Toast.makeText(getApplicationContext(), 
 "SMS faild, please try again.", 
 Toast.LENGTH_LONG).show(); 
 e.printStackTrace(); 
 } 
 } 
 @Override 
 public boolean onCreateOptionsMenu(Menu menu) { 
 // Inflate the menu; this adds items to the action bar if it is present. 
 getMenuInflater().inflate(R.menu.main, menu); 
 return true; 
 } 
}
terus untuk tampilanya ubah activity_main.xml yang ada di layout seperti dibawah ini:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" > 
 
   <TextView 
   android:id="@+id/textViewPhoneNo" 
   android:layout_width="wrap_content" 
   android:layout_height="wrap_content" 
   android:text="@string/phone_label" /> 
 
   <EditText 
   android:id="@+id/editTextPhoneNo" 
   android:layout_width="fill_parent" 
   android:layout_height="wrap_content" 
   android:inputType="phone"/> 
 
   <TextView 
   android:id="@+id/textViewMessage" 
   android:layout_width="wrap_content" 
   android:layout_height="wrap_content" 
   android:text="@string/sms_label" /> 
 
   <EditText 
   android:id="@+id/editTextSMS" 
   android:layout_width="fill_parent" 
   android:layout_height="wrap_content" 
   android:inputType="textMultiLine"/> 
 
   <Button android:id="@+id/btnSendSMS" 
   android:layout_width="fill_parent" 
   android:layout_height="wrap_content"    
   android:text="@string/send_sms_label"/> 
 
</LinearLayout>
terus ubah string.xml yang ada di value menjadi seperti di bawah
<?xml version="1.0" encoding="utf-8"?> 
<resources> 
 
 <string name="app_name">SendSMSDemo</string> 
 <string name="action_settings">Settings</string> 
 <string name="hello_world">Hello world!</string> 
 <string name="phone_label">Enter Phone Number:</string> 
 <string name="sms_label">Enter SMS Message:</string> 
 <string name="send_sms_label">Send SMS</string> 
 
</resources> 
terakhir ubah AndroidManifest.xml  menjadi seperti dibawah ini:
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
 package="com.example.sendsmsdemo" 
 android:versionCode="1" 
 android:versionName="1.0" > 
 
 <uses-sdk 
 android:minSdkVersion="8" 
 android:targetSdkVersion="17" /> 
 <uses-permission android:name="android.permission.SEND_SMS" /> 
 
 <application 
 android:allowBackup="true" 
 android:icon="@drawable/ic_launcher" 
 android:label="@string/app_name" 
 android:theme="@style/AppTheme" > 
 <activity 
 android:name="com.example.sendsmsdemo.MainActivity" 
 android:label="@string/app_name" > 
 <intent-filter> 
 <action android:name="android.intent.action.MAIN" /> 
 
 <category android:name="android.intent.category.LAUNCHER" /> 
 </intent-filter> 
 </activity> 
 </application> 
 
</manifest> 
nah waktunya test aplikasi sederhana kita di devices android jangan lupad di nyalain USB Debug nya biar bisa di pasang dari Eclipse, coba buat kirim SMS.....
segini aja dulu, maaf kalo tulisanya amburadul.....semoga potingan ini bermanfaat.....selamat mencoba.
Read More
      edit

April 11, 2016

Published 7:47 PM by with 1 comment

Cara porting rom sesama chipset

Kali ini saya mau posting salah satu kegiata yang sering saya lakukan beberapa bulan kebelakang, yaitu porting rom android. dan saya akan menjelaskan cara termudah porting rom yang pasti menurut saya.
tapi ingat cara ini akan berjalan lancar jika chipset yang digunakan devices nya sama seperti mt6577 ke mt6577 atau mt6572 ke mt6572 mt6682 ke mt6582 dan seterusnya...
langsung aja sipkan dulu alat bahanya, yaitu:
  1. Notepad ++(biar enak liat updaters-script di meta inf)
  2. winrar/7zip/winzip buat extarct file2 nya
  3. baserom hh kamu
  4. dan rom yang mau di port ke hh kamu
yang harus diperhatikan buat rom yang mau kamu porting adalah type chipset yang digunakan, sama versi SDK Androidnya seperti 4.1.1 bisa di port ke 4.1.2 atau 4.2.2 atau kitkat 4.4.3 ke 4.4.2, untuk melihat versi SDK nya bisa di lihat di buld.prop.
Langkah-langkahnya
  • Extract kedua rom ( rom base dan rom port )
    Contoh kamu extract rom BASE yaitu rom bawaan hp kamu di folder BASE dan PORT rom ke folder PORT
  • Copy file/folder yang ada dibawah ke PORT rom
*system/vendor
*system/usr
*system/lib/modules
*system/lib/hw
*system/lib/libncurses.so
*system/etc/firmware
*system/etc/vold.fstab (untuk android Jellybean)
*system/etc/vold.fstab.nand (untuk android jellybean)
*system/etc/bluetooth
  • copy boot.img dari folder base ke port
  • buka Folder Port ROM dan masuk ke META-INF /google/android dan buka updater-script denga Notepad ++
  • lakukan hal yang sama seperti di atas di folder base
  • di updater-scrirpt port rom cari baris yang berawalan dengan format(" ganti dengan yang ada di base contoh:
format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");

menjadi

format("ext4", "EMMC", "/dev/block/mmcblk0p4", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p4", "/system");
  • buka folder port buat file zip lagi semua folder dan file yang ada di sana
  • coba test flash via cwm bootloop atau tidak
terkadang walaupun kita lakukan secara teliti mungkin, ada saja hal-hal yang bisa menyebabkan bootloop. bila hh tidak mengalami bootloop dan sukses masuk home screen ada saja BUG yang kta temukan, beberapa cara fix BUGnya:
Fix Camera Tidak Konek/Force Close:
• system/lib/libcameraservice.so
• system/lib/libcamdrv.so
Fix Internal Memory:
• system/etc/vold.fstab
Fix Suara/Audio Volume:
• system/lib/libcustom_nvram.so
Fix Network/Jaringan 3G:
• system/etc/agps_profiles_conf
• system/etc/apns-conf
• system/etc/epo-conf
• system/etc/spn-conf
• system/etc/virtual-spn-conf-by-efspn
• system/etc/virtual-spn-conf-by-imsi
Fix WIFI Toggle:
• system/etc/wide-dhcpv6 (folder)
• system/etc/wifi (folder)
Fix FlashLight:
• system/lib/libfeatureio.so
Fix Compass:
• system/lib/libsensorservice.so
Fix Video Pixel:
• system/lib/libvcodecdrv.so
Fix Touchscreen Terbalik:
• system/lib/libinput.so
Fix Brightness/Kecerahan Layar:
• system/lib/hw/sensor.default.so
(gunakan sensor.default.so dari port rom)
Fix Resolution Problem/Resolusi Layar:
Go To Build.prop and edit..
Jika kalian Porting dari Iayar 480 x 800 ke 320 x 240??
Di Build.Prop tambahkan Teks ini:
• ro.sf.lcd_density=240   (untuk 480x800)
• ro.sf.lcd_density=160 (untuk 320x240)
Jika Layar/Touchscreen Terbalik:
Masuk Build.Prop dan Edit:
• ro.sf.hwrotation=0
 
cara ini selalu lancar untuk porting rom jelly bean dan untuk kitkat biasanya hanya beberapa bug yang muncul, cari referensi lain dari forum, blog, atau group facebook. akhir kata semoga tulisan ini bermanfaat......
Read More
      edit