Hallo kali ini saya akan share bagaimana cara buat portal berita di android dengan menggunakan database mysql,
pertama kita buat dulu database nya dengan nama db_berita , kemudian buat tabel nya dengan nama berita, dan ini strukturnya
Selanjutnya kita bikin dulu koneksi, file berita , dan detail_berita di php nya
1. koneksi.php
<?php
$server = "localhost";
$username = "root";
$password = "";
$database = "db_berita";
mysql_connect($server,$username,$password) or die("Koneksi gagal");
mysql_select_db($database) or die("Database tidak bisa dibuka");
?>
2. berita.php
<?php
include 'config/koneksi.php';
$query = mysql_query("SELECT * FROM berita ORDER BY id_berita desc");
$json = '{"berita": [';
while ($row = mysql_fetch_array ($query)) {
$char = '"';
$json .= '{"id":"'.$row['id_berita'].'",
"judul":"'.str_replace($char,'`4',strip_tags($row['judul'])).'",
"gambar":"http://192.168.55.129/portalBerita/foto_berita/'.$row['gambar'].'
"},';
}
$json = substr($json,0,strlen($json)-1);
$json .= ']}';
echo $json;
?>
3. detail_berita.php
<?php
$kd="";
include 'config/koneksi.php';
//$kd = $_GET['idberita'];
if(isset($_GET['id_berita'])){
$kd=$_GET['id_berita']; }
$query = mysql_query('SELECT * FROM berita where id_berita="'.$kd.'"');
$json = '{"berita": [';
while($row=mysql_fetch_array($query))
{
$char = '"';
$json .='{"id":"'.$row['id_berita'].'",
"judul":"'.str_replace($char,'`',strip_tags($row["judul"])).'",
"isi":"'.str_replace($char,'`',strip_tags($row["isi_berita"])).'",
"gambar":"http://192.168.55.129/portalBerita/foto_berita/'.$row['gambar'].'"},'; }
$json = substr($json,0,strlen($json)-1);
$json .= ']}';
// print json
echo $json;
?>
untuk lebih jelasnya liha gambar
*koneksi.php berada didalam folder config
*foto_berita untuk meload gambar berita kita
Masuk Ke Androidnya
setelah itu kita langsung ke pembuatan android nya, pertama buka android studio bikin project baru beri nama Portal Berita
lalu kita tambahkan 3 layout yaitu
-activity_detail_berita
-content_main
-list_row
berarti 4 sama activity_main
Lihat Gambar
yang pertama bikin activity_detail_berita
Content_main
list_row
activity_main
buka folder values>styles.xml , lalu tambahkan kode berikut
jangan lupa tambahkan dependencies2 berikut di build.gradle
Lanjut ke Java nya , berikut struktur filenya
MainActivity
Config
untuk baris ke 5 itu url IP kita
DetailBerita
FileCache
ImageLoader
JSONParser
LazyAdapter
MemoryCache
package com.example.farid.portalberita;
import android.graphics.Bitmap;
import java.lang.ref.SoftReference;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class MemoryCache {
private Map<String, SoftReference<Bitmap>> cache = Collections
.synchronizedMap(new HashMap<String, SoftReference<Bitmap>>());
public Bitmap get(String id) {
if (!cache.containsKey(id))
return null;
SoftReference<Bitmap> ref = cache.get(id);
return ref.get();
}
public void put(String id, Bitmap bitmap) {
cache.put(id, new SoftReference<Bitmap>(bitmap));
}
public void clear() {
cache.clear();
}
}
Utils
package com.example.farid.portalberita;
import java.io.InputStream;
import java.io.OutputStream;
public class Utils {
public static void CopyStream(InputStream is, OutputStream os) {
final int buffer_size = 1024;
try {
byte[] bytes = new byte[buffer_size];
for (;;) {
int count = is.read(bytes, 0, buffer_size);
if (count == -1)
break;
os.write(bytes, 0, count);
}
} catch (Exception ex) {
}
}
}
Dan terakhir yaitu di AndroidManifest nya tambahkan kode berikut
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.farid.portalberita">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".DetailBerita">
</activity>
</application>
</manifest>Dan Jika berhasil maka pas di running akan muncul seperti ini
Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com
atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :