Top Banner
Step By Step Menjadi Programmer Handal Dengan VB.Net Junindar, ST, MCPD, MOS, MCT, MVP VB.NET Menampilkan data Sharepoint List pada Android App menggunakan Xamarin Junindar, ST, MCPD, MOS, MCT, MVP .NET [email protected] http://junindar.blogspot.com Abstrak Android adalah salah satu mobile oprating system yang saat banyak digunakan di berbagai smartphone, baik yang berspesifikasi rendah maupun mumpuni. Dikarenakan android saat ini merupakan salah satu mobile OS paling digemari, maka tidak dipungkiri sangat banyak sekali aplikasi-aplikasi mobile untuk android. Untuk membuat aplikasi mobile ini ada beberapa tools yang bisa digunakan dan salah satunya adalah dengan menggunakan Xamarin. Lisensi Dokumen: Copyright © 2003 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
15

Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Jul 20, 2019

Download

Documents

phamkhanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Menampilkan data Sharepoint List

pada Android App menggunakan

Xamarin

Junindar, ST, MCPD, MOS, MCT, MVP .NET [email protected]

http://junindar.blogspot.com

Abstrak

Android adalah salah satu mobile oprating system yang saat banyak digunakan di berbagai

smartphone, baik yang berspesifikasi rendah maupun mumpuni. Dikarenakan android saat

ini merupakan salah satu mobile OS paling digemari, maka tidak dipungkiri sangat banyak

sekali aplikasi-aplikasi mobile untuk android. Untuk membuat aplikasi mobile ini ada

beberapa tools yang bisa digunakan dan salah satunya adalah dengan menggunakan

Xamarin.

Lisensi Dokumen: Copyright © 2003 IlmuKomputer.Com

Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan

disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat

tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang

disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang,

kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.

Page 2: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Pendahuluan

Pada artikel ini akan dijelaskan bagaimana cara untuk membuat aplikasi mobile untuk

menampilkan data Sharepoint dengan menggunakan Xamarin dan JSON.Net. Xamarin

adalah salah tools untuk membuat aplikasi mobile dimana bahasa pemograman yang

digunakan adalah C#. Xamarin merupakan perusahaan perangkat lunak yang berdiri pada

bulan Mei tahun 2015. Integrated development environment (IDE) pada Xamarin di kenal

dengan nama Xamarin Studio. Tetapi selain Xamarin Studio kita juga dapat menggunakan

Visual Studio dan pada artikel ini kita akan menggunakan Visual Studio 2013 .

Selanjutnya untuk mengambil data pada sharepoint kita akan menggunakan HttpClient.

Page 3: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Isi

Untuk memudahkan memahami isi dari artikel ini, kita akan membuat sebuah project

latihan, dimana kita akan menggunakan Sharepoint (2013) List sebagai media

penyimpanan datanya. Untuk pertama kali buka Visual Studio (VS) 2013 (diasumsikan

Xamarin sudah di install pada PC/Laptop)

A. Create New Project

Pada latihan yang pertama ini, akan dijelaskan bagaimana membuat sebuah project

untuk aplikasi pada anroid.

1. Pada VS 2013 klik New Project lalu tampilan jendela New Project akan muncul seperti

gambar dibawah ini. Pilih Blank App (Android) dan ganti nama project menjadi

LatihanJSON. Dan klik “OK”.

Setelah kita melakukan langkah diatas, maka kita akan mendapatkan sebuah project

baru seperti gambar dibawah.

Page 4: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Selanjutnya tambah beberapa folder (Activity, Adapter, Entity dan Fragment) pada project.

Page 5: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

a. Pada folder entity tambah dua buah class, dengan nama “ProjectSite” dan

“Site”. Tambahkan sintaks dibawah untuk masing-masing class.

namespace LatihanJSON

{

public class ProjectSite {

public string ID { get; set; } public string Link { get; set; }

public string ProjectName { get; set; }

public string Status { get; set; } public string Priority { get; set; }

public string State { get; set; }

}

}

using System.Collections.Generic;

namespace LatihanJSON

{ public class Site

{

public string ID { get; set; } public string Url { get; set; }

public List<ProjectSite> Items { get; set; }

} }

Page 6: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Pada Class “ProjectSite” merupakan representasi dari List “Project

Information” pada SharePoint, yang nantinya akan kita tampilkan data-data

pada list tersebut kedalam apps. Sedangkan Class Site berfungsi sebagai Parent

dari Class ProjectSite. Dimana satu ID pada Site bisa memiliki banyak Items

pada ProjectSite.

2. Tambahkan sebuah class pada Folder “Adapter” dengan nama “ListProjectAdapter”.

Class ini berfungsi untuk melakukan bind data ke dalam user interface pada aplikasi.

Lalu pada class yang dibuat, ubah sintaks seperti dibawah.

using System.Linq; using Android.App;

using Android.Views;

using Android.Widget;

namespace LatihanJSON

{

public class ListProjectAdapter : BaseAdapter<ProjectSite> {

private readonly ProjectSite[] _projectItems; Activity _context = null;

public ListProjectAdapter(Activity context, ProjectSite[] projectItems)

{ _context = context;

_projectItems = projectItems;

}

public override long GetItemId(int position)

{

return position; }

Page 7: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Sintaks diatas merupakan Class Adapter untuk ProjectSite, dimana kita akan

menampilkan data seperti ProjectName, Status dan Priority kedalam listview

dengan cara melakukan Overide View.

3. Pada folder Layout (Resources>Layout), tambahkan sebuah Android Layout (.axml)

dengan nama “FragmentListProject”. Klik kanan pada Layout Folder > Add > New

Item, lalu pilih “Android Layout”.

Gambar dibawah adalah default dari Layout yang telah kita buat diatas.

public override View GetView(int position, View convertView, ViewGroup

parent)

{ var view = convertView ??

_context.LayoutInflater.Inflate(Android.Resource.Layout.SimpleListItem2, null);

view.FindViewById<TextView>(Android.Resource.Id.Text1).Text =

_projectItems[position].ProjectName;

view.FindViewById<TextView>(Android.Resource.Id.Text2).Text = string.Format("Project Status : {0} - Priority : {1}",

_projectItems[position].Status, _projectItems[position].Priority);

return view;

} public override int Count

{

get { return _projectItems.Count(); } }

public override ProjectSite this[int position] {

get { return _projectItems[position]; }

} }

}

Page 8: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Dan selanjutnya adalah kita akan mengganti layout diatas. Klik tab source pada

layout dan ganti sintaks dari layout menjadi seperti gambar dibawah.

Pada sintaks diatas, dapat kita lihat terdapat sebuah ListView dengan nama “siteItemList”.

ListView ini berfungsi untuk tempat menampilkan data dari SharePoint List nantinya.

Pada folder “Fragment” tambah sebuah Fragment dengan nama “ListProjectFragment”.

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent" android:minWidth="25px"

android:minHeight="25px"

android:isScrollContainer="true" android:padding="3dip">

<ListView

android:minWidth="25px" android:minHeight="25px"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:id="@+id/siteItemList" /> </LinearLayout>

Page 9: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Fragment ini lah yang berfungsi untuk mengambil data dari Sharepoint List dan

ditampilkan pada ListView pada FragmentListProject Layout. Untuk lebih memahami

ikuti langkah-langkah berikut ini. Pertama sebelum masuk dalam membuat sintaks pada

fragment, tambahkan sebuah Reference “System.Net.Http” pada Project. Selanjutnya

ketikkan sintas dibawah ini pada Fragment yang baru dibuat.

Page 10: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

using System;

using System.Collections.Generic;

using System.Xml.Linq;

using Android.App; using Android.OS;

using Android.Util;

using Android.Views; using Android.Widget;

using System.Net.Http;

namespace LatihanJSON {

public class ListProjectFragment : Fragment

{

public static string ArgMenuNumber = "menu_number";

private List<Site> _sites; private ListView _siteListView;

public ListProjectFragment() {

_sites = new List<Site>();

}

public override View OnCreateView(LayoutInflater p0, ViewGroup p1, Bundle p2)

{ var rootView = p0.Inflate(Resource.Layout.FragmentListProject, p1, false);

_siteListView = (ListView)rootView.FindViewById(Resource.Id.siteItemList); AddProjectInfo("http://linkurl/_api/web/webs");

return rootView; }

private async void AddProjectInfo(string url)

{ try

{

var newSite = new Site

{

Url = url

};

var httpClientHandler = new HttpClientHandler

{ Credentials = new System.Net.NetworkCredential("domain\\username", "**")

};

Page 11: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

using (var client = new HttpClient(httpClientHandler))

{

var xmlFeed = await client.GetStringAsync(url);

var doc = XDocument.Parse(xmlFeed);

XElement root = doc.Root;

XNamespace dc = "http://www.w3.org/2005/Atom"; XNamespace dcm =

"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata";

XNamespace dcd =

"http://schemas.microsoft.com/ado/2007/08/dataservices";

newSite.ID = url.Substring(0, url.Length - 13);

List<ProjectSite> lstProjectInfo = new List<ProjectSite>();

foreach (XElement e in root.Descendants(dc + "entry")) {

var xmlInfo = ""; var bCon = true;

try

{

xmlInfo = await client.GetStringAsync(e.Element(dc + "id").Value +

"/lists/getByTitle('Project Information')/items");

} catch (Exception)

{

bCon = false;

}

if (!bCon) continue;

var docInfo = XDocument.Parse(xmlInfo);

XElement rootInfo = docInfo.Root;

foreach (XElement eInfo in rootInfo.Descendants(dcm +

"properties"))

{

ProjectSite newProject = new ProjectSite();

newProject.ID = eInfo.Element(dcd + "ID").Value; newProject.ProjectName = eInfo.Element(dcd + "Title").Value;

newProject.Link = e.Element(dc + "id").Value;

newProject.State = eInfo.Element(dcd + "State").Value;

if (eInfo.Element(dcd + "ProjectStatus") != null) newProject.Status = eInfo.Element(dcd + "ProjectStatus").Value;

newProject.Priority = eInfo.Element(dcd + "Priority").Value;

lstProjectInfo.Add(newProject);

}

}

Page 12: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Pada "async void AddProjectInfo" dapat kita lihat bagaimana sebelum mengakses

Sharepoint List terlebih dahulu kita melakukan cek credential terlebih dahulu dengan

memasukkan username dan password.

4. Selanjutnya ubah Layout pada Main.axml menjadi seperti sintaks dibawah.

5. Copy “MainActivity.cs” kedalam folder Activity. Lalu ubah sintaks pada “OnCreate”

seperti sintaks dibawah.

newSite.Items = lstProjectInfo;

_sites.Add(newSite);

_siteListView.Adapter = new ListProjectAdapter(Activity, _sites[0].Items.ToArray());

}

} catch (Exception ex)

{

Log.Error("JSON", "Encountered an error {0}", ex.Message);

}

} }

}

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical" android:layout_width="fill_parent"

android:layout_height="fill_parent">

<!-- The main content view --> <FrameLayout

android:id="@+id/content_frame"

android:layout_width="match_parent"

android:layout_height="match_parent" android:background="@android:color/black" />

</LinearLayout>

protected override void OnCreate(Bundle bundle)

{

base.OnCreate(bundle);

// Set our view from the "main" layout resource SetContentView(Resource.Layout.Main);

var fragment = new ListProjectFragment();

var arguments = new Bundle(); arguments.PutInt(ListProjectFragment.ArgMenuNumber, 0);

fragment.Arguments = arguments;

FragmentManager.BeginTransaction() .Replace(Resource.Id.content_frame, fragment)

.Commit();

}

Page 13: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Dan jalankan program, maka kita akan mendapatkan data-data yang terdapat pada

Sharepoint List.

Page 14: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Penutup

Pada artikel ini telah dijelaskan bagaimana menggunakan Xamarin untuk menampilkan

data pada Android App. Sedangkan untuk memudahkan dalam memahami isi artikel, maka

penulis juga menyertakan dengan full source code project latihan ini, dan dapat di

download disini.

http://junindar.blogspot.com/2015/05/pengenalan-entity-framework-ef-6-pada.html

Page 15: Menampilkan data Sharepoint List pada Android App ... · menampilkan data seperti ProjectName, Status dan Priority kedalam listview dengan cara melakukan Overide View. 3. Pada folder

Step By Step Menjadi Programmer Handal Dengan VB.Net

Junindar, ST, MCPD, MOS, MCT, MVP VB.NET

Referensi

1. www.msdn.microsoft.com

2. www.planetsourcecode.com

3. www.codeproject.com

4. www.aspnet.com

Masih banyak lagi referensi yang ada di Intenet. Anda tinggal cari di www.Google.com.

Dengan kata kunci “tutorial VB.Net”

Biografi Penulis.

Junindar Lahir di Tanjung Pinang, 21 Juni 1982. Menyelesaikan

Program S1 pada jurusan Teknik Informatika di Sekolah Tinggi

Sains dan Teknologi Indonesia (ST-INTEN-Bandung). Junindar

mendapatkan Award Microsoft MVP VB pertanggal 1 oktober

2009 hingga saat ini. Senang mengutak-atik computer yang

berkaitan dengan bahasa pemrograman. Keahlian, sedikit mengerti

beberapa bahasa pemrograman seperti : VB.Net, C#, SharePoint,

ASP.NET, VBA. Reporting: Crystal Report dan Report Builder.

Database: MS Access, MY SQL dan SQL Server. Simulation /

Modeling Packages: Visio Enterprise, Rational Rose dan Power

Designer. Dan senang bermain gitar, karena untuk bisa menjadi

pemain gitar dan seorang programmer sama-sama membutuhkan

seni. Pada saat ini bekerja di salah satu Perusahaan Consulting dan

Project Management di Malaysia sebagai Senior Consultant.

Memiliki beberapa sertifikasi dari Microsoft yaitu Microsoft

Certified Professional Developer (MCPD – SharePoint 2010), MOS

(Microsoft Office Specialist) dan MCT (Microsoft Certified

Trainer) Mempunyai moto hidup: “Jauh lebih baik menjadi

Orang Bodoh yang giat belajar, dari pada orang Pintar yang

tidak pernah mengimplementasikan ilmunya”.