Kamis, 26 November 2015

Menu Dashboard

import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class MenuActivity extends ListActivity {
    String[] menuutama = new String[] { "Terjemah Kata", "Tambah Kata",    "Daftar Kata", "Keluar Aplikasi" };
   
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);   
        this.setListAdapter(new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_1, menuutama));
    }
   
    @Override   
    protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);       
        Object o = this.getListAdapter().getItem(position);
        String pilihan = o.toString();       
        tampilkanPilihan(pilihan);
    }
   
    protected void tampilkanPilihan(String pilihan) {
        try {
                Intent i = null;
                if (pilihan.equals("Terjemah Kata")) {
                    i = new Intent(this,AmbilActivity.class);
                } else if (pilihan.equals("Tambah Kata")) {
                    i = new Intent(this, TambahActivity.class);
                } else if (pilihan.equals("Daftar Kata")) {
                    i = new Intent(this, DaftarKataActivity.class);
                } else if (pilihan.equals("Keluar Aplikasi")) {
                    finish();
                }
                startActivity(i);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Menu Delete

Class Java
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONObject;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.Html;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class DeleteActivity extends Activity implements OnItemClickListener{
    private final String urlDisplay = "http://10.0.2.2/contoh/getUser.php";     //koneksi database ke localhost
    private final String urlDelete = "http://10.0.2.2/contoh/deleteUser.php";     //koneksi database ke localhost
    private UserAdapter adapter;
    private ListView listUser;
   
   
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_display);               
        adapter = new UserAdapter(this, R.id.textView1);
        loadDataUser();       
        listUser = (ListView) findViewById(R.id.listViewUser);       
        listUser.setAdapter(adapter);
        listUser.setOnItemClickListener(this);
    }
   
   
   
    private void loadDataUser(){
        try {    String jsonString = DeleteActivity.getRequestFromServer(urlDisplay);           
                JSONObject jObject = new JSONObject(jsonString);
                JSONArray newsJsonArray = jObject.getJSONArray("user");           
                for (int i = 0; i < newsJsonArray.length(); i++) {
                    User user = new User(newsJsonArray.getJSONObject(i));
                    adapter.add(user);
                }
                adapter.notifyDataSetChanged();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
   
    class UserAdapter extends ArrayAdapter<User>{       
        public UserAdapter(Context context, int resource) {
            super(context, resource);           
        }

        public View getView(int position, View convertView, ViewGroup parent) {
            if(convertView==null){
                convertView = ((LayoutInflater)getSystemService(Activity.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.activity_adapter, parent,false);
            }                       
            TextView usernameUser = (TextView) convertView.findViewById(R.id.textViewUsername);           
            TextView passwordUser = (TextView) convertView.findViewById(R.id.textViewPassword);
            User entityUser = getItem(position);
            usernameUser.setText(entityUser.username);
            passwordUser.setText(entityUser.password);                       
            return convertView;
        }
    }
   
       
    public void onItemClick(AdapterView<?> adapterV, View view, int position, long id) {       
        try {    String url = DeleteActivity.getRequestFromServer(urlDelete+"?username="+adapter.getItem(position).username);               
                Toast.makeText(this, url, Toast.LENGTH_LONG).show();       
        } catch (Exception e) {
            Toast.makeText(this, "Error: "+ e.getMessage(), Toast.LENGTH_LONG).show();
        }
        startActivity(new Intent(this, DeleteActivity.class));
        finish();
    }
   
    public static String getRequestFromServer(String url){   
        try {
            Class<?> strictModeClass = Class.forName("android.os.StrictMode", true, Thread.currentThread()
                    .getContextClassLoader());

            Class<?> threadPolicyClass = Class.forName("android.os.StrictMode$ThreadPolicy", true, Thread
                    .currentThread().getContextClassLoader());

            Class<?> threadPolicyBuilderClass = Class.forName("android.os.StrictMode$ThreadPolicy$Builder", true,
                    Thread.currentThread().getContextClassLoader());

            Method setThreadPolicyMethod = strictModeClass.getMethod("setThreadPolicy", threadPolicyClass);

            Method detectAllMethod = threadPolicyBuilderClass.getMethod("detectAll");
            Method penaltyMethod = threadPolicyBuilderClass.getMethod("penaltyLog");
            Method buildMethod = threadPolicyBuilderClass.getMethod("build");

            Constructor<?> threadPolicyBuilderConstructor = threadPolicyBuilderClass.getConstructor();
            Object threadPolicyBuilderObject = threadPolicyBuilderConstructor.newInstance();

            Object obj = detectAllMethod.invoke(threadPolicyBuilderObject);

            obj = penaltyMethod.invoke(obj);
            Object threadPolicyObject = buildMethod.invoke(obj);
            setThreadPolicyMethod.invoke(strictModeClass, threadPolicyObject);

        } catch (Exception ex) {
            Log.w("Thread Policy", ex);
        }

        String result = "Succeed";
        HttpClient client = new DefaultHttpClient();
        HttpClientParams.setRedirecting(client.getParams(), true);
        HttpGet request = new HttpGet(url);
        try{
            HttpResponse response = client.execute(request);
            InputStream in = response.getEntity().getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(in));
            StringBuilder str = new StringBuilder();
            String line = null;
            int lineCount = 0;
            while((line = reader.readLine()) != null){
                if(lineCount>0) str.append("\n");
                str.append(line);
            }
            in.close();
            result = str.toString();
            Log.w("get Request", "asli : "+result);
            if(result.indexOf("<") > 0){
                result = result.substring(0, result.indexOf("<"));
            }
            Log.w("get Request", "proses : "+Html.fromHtml(result));
            return Html.fromHtml(result).toString();           
        }catch(Exception ex){
            ex.printStackTrace();
            result = "Error";
        }
        return result;
    }
}


Class PHP
<?php

$username = $_GET['username'];


include "connect_db.php";

$query = "delete from tbuser where username ='".$username."'";
$result = mysql_query($query, $link) or die('Error query:  '.$query);

echo $result;

?>

Get User

<?php

include "connect_db.php";
$query = "SELECT username,password FROM tbuser";
$result = mysql_query($query, $link) or die('Errorquery:  '.$query);

$rows = array();
while ($r = mysql_fetch_assoc($result)) {
    $rows[] = $r;
}

$data = "{user:".json_encode($rows)."}";
echo $data;

?>

Query Update

<?php

$username = $_GET['username'];
$password = $_GET['password'];

include "connect_db.php";

$query = "update tbuser set password = '$password' where username ='".$username."' ";
$result = mysql_query($query, $link) or die('Error query:  '.$query);
echo $result;

?>

Materi Seminar Database Android

Silakan download.

Aplikasi Database Online

Berikut source code untuk contoh aplikasi database online menggunakan MySQL dan Php.
Class database: database
Class layout: tampil, tambah, ubah, adapter
Class control: menambahkan, mengubah, detailData
Manifest

Aplikasi Database Offline

Berikut source code untuk contoh aplikasi database offline di Androdi menggunakan SQLite.
Class layout:  row, tambah, ambil, list.
Class Java: menambahkan, mengambil, menampilkan, dashboard
Class Database: database
Manifest

Sabtu, 07 November 2015

Pertemuan 7

Materi terakhir untuk bahan UTS adalah Internet dan WWW. Pada pertemuan ini, kita akan membahas jenis aplikai web beserta logika dari proses Search Engine, misal Google. Silakan download.

Pertemuan 6

Materi pada pertemuan ini adalah mengenal jenis-jenis media komunikasi data dan memahami penggunaan masing-masing dari jenis media tersebut. Silakan download.

Pertemuan 5

Setelah memahami jenis-jenis device untuk perangkat input, output, dan storage selanjutnya bagaimana pemrosesan data sendiri. Dimulai dari proses input, simpan di storage, dan ditampilkan oleh output device. Hal ini dilakukan dibahas pada materi System Unit, silakan download.

Nah, dalam pemrosesan data yang dilakukan oleh komponen-komponen dari System Unit ini bekerjasama dengan Operating System. Silakan download.

multimedia 2

download

multimedia 1

download