Porting Android apps ke BB 10 Part 1

Tulisan kali ini akan mendongeng masalah porting dari android app ke BB 10, bahan bahan yang diperlukan :

eclipse

– VMware player

BB 10 dev alpha simulator

Setelah peralatan perang komplit, mari kita lanjutkan, contoh kita akan porting salah satu aplikasi yang tekah kita develope di android. Lakukan step berikut ini :

  • Install VMware (search di google)
  • Install BB 10 dev alpha simulator (pada tahap ini perhatikan folder tampat penyimpanan penginstalannya)
  • Setelah semuanya terinstal, jalankan VMware Player
  • Pilih option Open Virtual Machine dan arahkan pada BlackBerry10Simulator.vmx di folder tempat kita menginstall VMware tersebut
  • Tunggu sampai booting nya selesai dan jika berhasil akan muncul tampilan seperti ini

new interface

 

Sampai Tahap ini kita telah berhasil menginstall simulator,

Next Step Install Blackberry Plugin untuk Android Development Tools

  • Buka eclipse -> Help -> Install New Software -> Add
  • Di name field masukin nama plugin
  • dan di location field, Url arahkan ke sini https://developer.blackberry.com/android/downloads/eclipseplugin/
  • Next dan kemudian Finish

Tulisannya disambung ya,, yang berikutnya akan bahas langsung ke teknik portingnya.. 😀

Advertisements

6 thoughts on “Porting Android apps ke BB 10 Part 1

  1. Hah, Wasting time, daripada port2an kayak gitu mendingan udah aja bikin aplikasi yang multiplatform. Pake bahasa C++ misalnya. Secara kan android backend-nya pake C++ biarpun depannya pake Java. Kalopun anti sama C++ sekarang ini kan banyak framework untuk bikin aplikasi multiplatform e.g. Phonegap, JQuery Mobile, Sencha Touch 2 yang bisa dibenamkan ke dalam engine webkitnya android, iphone atau bahkan si katro Blackberry.

    • Porting itu sebenernya konsepnya mirip seperti mas tadi bilang multiplatform, karena di device si BB 10 sendiri menggunakan sejenis VMware agar bisa menjalankan code nya android. kalo mas menyarankan multiplatform seperti phonegap, Jquery Mobile atau sencha dll, jwabannya relative. saya pernah menggunakan mosync, itu pake bahasa c++, saya develope untuk android , iphone dan windows phone. untuk skalabilitas kecil, menggunakan framework di semua platform sangat menguntungkan, selain waktu pengerjaan pendek, cost yang dikeluarkan pun sdikit. tapi untuk skla yang lebih besar, hal itu malah merugikan.
      1. Merugikan karena biasanya aplikasi yang menggunakan framework multiplatform sangat boros karena menggunakan resource memory yang tinggi, akibatnya aplikasi sangat lambat dan handphone sering cepat panas.
      2. Besarnya installer aplikasi menjadi terlalu besar, biasnya di native saya develope hanya 500kb menggunakan mosync bisa jadi 2 MB.
      3. Dikrenakan banyak kekurangannya image user terhadap product tersebut akan menjadi buruk,

      mungkin itu tanggapan saya

  2. yap.. mungkin benar bahwa app multiplatform lebih boros energi. Namun, menurut saya alasan ini tidak baik juga jika ditelan bulat2. Menggunakan alasan perbedaan resource yang sedikit lebih ringan menggambarkan orang2 yang kurang visioner.

    Alasannya:

    1. Device dan resource memori yang semakin murah. Device dan resource memori yang dibenamkan saat ini paling kecil berapa sihh? sudah sangat besar menurut saya. Namun memang saya akui, besarnya kebutuhan memori untuk web app belum bisa mengalahkan native app, namun sudah saaaangat bisa menyaingi native untuk saat ini. Sekarang pertanyaannya, bagaimana dengan enam bulan kemudian? satu tahun kemudian? atau bahkan dua tahun kemudian? selain semakin murahnya device dengan spec tinggi, technology multiplatform pun pasti sudah semakin baik. Baru muncul HTML5 dan CSS3 saja sudah sangat bisa membantu menyaingi native app dalam hal resource, tunggu saja kemunculan HTML6, HTML7 dsb. Visioner bos!

  3. Oalah, kalo ranahnya udah visioner atau enggak itu udah out of topic, bahasan saya saat ini. teknologi mana yang paling baik untuk di adopsi. Perusahaan di tempat saya pernah ngerilis aplikasi cross platform , cuma dari statistik mengecewakan, saya bikin waktu itu pake c++ dan dihybrid pake html 5 (jadi saya pernah mencoba platform yang anda bela itu), kalo jquerynya saya pake phonegap yang dipadukan dengan jquery mobile.

    dari situ kita memilih jalan untuk mengadopsi native , fokus di native. dan hasilnya better. itu kita uji di perangkat yang paling low end di Samsung Galaxy Young S5360, selebihnya di sony experia dan HTC. itu dari pengalaman saya dilapangan, mungkin anda mempunyai pengalaman yang jauuuuuh sekali dari saya, menguasai semua behavior device apapun OS nya, jadi silahkan berpendapat. 😀
    kalo mas berpendapat sudah sanggat bisa menyaingi. saya sdkit kurang stuju, soalnya saya bicara disini bukan omong tanpa bukti. Kami benar-benar melakukan pengujian, dan hasilnya sangat jauh berbeda dalam hal kecepatan. dalam mengakses web service kemudian menampilkan dalam bentuk list, ketidakmampuan crossplatform dalam melakukan threading atau asyncronous dalam load image dari web service, merupakan point minus tersendiri ketika kita memilih crosplatform. yang kedua selain efektifitas di code, crosplatform juga kurang menyediakan fungsi spesifik untuk akses di native.

    1. ketika saya buat menggunakan mosync, untuk layanan sms, mosync tidak bisa mengakses fitur sms di tiap device (pengujian dilakukan di HTC, sony Experia, Lumia 710). DI dokumentasinya disebutkan karena setiap manufaktur mempunyai core yang berbeda, jadi fungsi built in mosync hanya capable untuk bkin dari awal menggunakan platform trsebut(Buang waktu lagi untuk fitur yang ada di masing2 device).
    2. Untuk pengecekan koneksi, karena behaviournya yang web banget, bkin saya ga leluasa, karena semua fungsi hanya ditriger ketika halaman diload, atau ada event yang dilakukan. kalo di native saya bisa melakukan itu semua di level lebih rendahnya tanpa harus ada triger dari user.

    dan kalo anda baca, hampir smua platform sekarang menyediakan fasilitas porting, contoh dari android ke windows phone, dari android ke bb 10. kalo pun anda tau konsep porting adalah, seperti yang saya jelaskan diatas, crossplatform dengan sekali code develope (simplenya).

    Mungkin dimasa depan apa yang anda katakan bisa jadi betul dan kalo dibaca lagi semua statement yang saya ajukan hanyalah pemilihan current teknologi mana yang paling baik jika digunakan dalam skala enterprise pada ranah mobile. cuma sdikit berkaca pada ranah web, apakah HTML 5 bisa menggantikan php di aplikasi skala enterprise? bagi saya teknologi bukanlah agama hal yang harus difanatikan. (pendapat pribadi). cuma saran ke anda, cobalah dulu menerima banyak input, lakukan koding dulu di masing masing platform android, windows phone, iphone dan ios, bahkan di cross platform (disini saya hanya mencoba phone gap dan mosync). perdalam semuanya (minimal behaviournya, saran loh ya ^^). sekali lagi teknologi mana yang terbaik, balik lagi ke jawaban saya “relative”, dmna sudut pandang yang memandang.
    perdebatan anda yang bilang visioner atau enggak saya hanya bisa ketawa, bnyak orang yang seperti anda (argumentum ad hominem).

    anywei, maksih udah berkunjung dan jangan bosen berkunjung ke blog saya.. thanks 😀

  4. Sejujurnya pengalaman membuat aplikasi mobile saya sudah dimulai ketika sistem operasi palm masih merajalela. waktu itu saya membuat kloningan game semisal pac man yang nantinya dipasarkan oleh sebuah perusahaan singapore, ‘catalyst’. Hanya setahun setelah versi pertama palm OS dirilis, muncul symbian yang mulai merajalela saat itu dan perusahaan pun meminta untuk melakukan port ke symbian. Itulah pengalaman pertama saya melakukan porting sebuah aplikasi. Bayangkan, sebuah aplikasi versi awal yang baru berumur 1 tahun dimana dari sisi source code belum berkembang, modularitas belum dioptimisasi harus diporting ke OS lain dimana waktu itu porting dilakukan dengan menggunakan sistem porting buatan sendiri yang juga masih versi awal. Ya sudahlah, akhirnya kami jadi punya 2 buah aplikasi game dengan fungsi yang sama tapi dengan standard yang berbeda. Permasalahan muncul ketika terjadi bug pada aplikasi yang menggunakan OS palm, otomatis kami harus melakukan update pada aplikasi tersebut yang otomatis juga harus diporting lagi ke versi symbian. Masalah pun terjadi pada proses porting dimana aplikasi porting tidak kompatible lagi dan juga harus diupdate, untunglah itu merupakah aplikasi porting buatan perusahaan sendiri sehingga mudah saja dilakukan update, bayangkan jika aplikasi porting “buatan orang lain”.

    Dengan semakin seringnya update OS Palm dan symbian waktu itu dimana periode update-nya tidak sama, sangat menyulitkan. Ditambah dengan banyaknya source code aplikasi yang belum optimal (maklum versi awal). (Pernah gak sih anda ngoding di ‘jaman penjajahan’ seperti itu?). Soal spesifikasi device, saya pernah menggunakan yang lebih rendah dari anda.

    Tapi, paragraf diatas sama sekali bukan untuk pamer pengalaman pada anda. Saya hanya ingin menggambarkan betapa ribetnya urusan porting sesungguhnya. Ya mungkin sekarang jamannya sudah simpel karena sudah ada ‘baby sitter’ buat anda yang ‘bikinin’ sistem porting-nya. Namun, perlu diketahui, porting aplikasi hanya merupakan cara ‘instan’ bagi para pengembang OS ‘baru’ agar app store-nya dipenuhi banyak aplikasi. Siapa yang untung? ya pengembang OS. Dari sisi developer saya sangat ragu akan keuntungannya pertama:

    1. Jika aplikasi anda tidak ter-port dengan benar, anda tidak bisa ubah sistem portingnya (pernah kejadian ketika saya bekerja di gameloft).

    2. Porting aplikasi bagi saya mirip dengan render sebuah game 3D, sama-sama harus menunggu lama, bagi saya nunggu lama = resiko. Kita tidak tau apa yang akan terjadi di tengah jalan. Kecuali anda membuat aplikasi yang ringan.

    Sebenarnya masih banyak yang ingin saya tulis, namun berhubung waktu yang terbatas itu saja dulu alasan yang ingin saya sampaikan. Mengenai apakah html5 bisa menggantikan php pada skala enterprise, seolah-olah anda tidak tahu saja apa itu html5 hahaha..

    Urusan load image, salah besar kalau tidak bisa asynchronous, mungkin anda terbiasa menggunakan framework mentah tanpa baca dokumentasi lengkapnya, atau baca comment2 di source code-nya.

    Urusan harus ada trigger dari user, (ckckck…) anak muda oh anak muda,
    coba baca lagi deh, mau baca tentang ajax (yang sederhana) boleh, atau dokumentasi library yang anda gunakan juga boleh.

    Urusan akses device, anda tahunya hanya mosync sih..

    Urusan fanatisme berlebihan, hmm.. bukannya mau fanatisme berlebihan sih, saya hanya tidak ingin cerita itu terulang lagi. Jadi ceritanya begini:

    “Pada suatu ketika hiduplah seorang programmer, lalu mati”

    the end. 😀

    Silahkan artikan sendiri cerita yang hanya satu kalimat itu anak muda. Cuma satu kalimat, tapi bagi saya itu sangat bermakna. Entah bagi anda, (mungkin tidak).

    Note: Urusan teori, anak muda Indonesia memang rajanya. Saya terkejut karenanya, setelah lama tidak ke negeri tercinta.

    • Mantap,, 😀
      Mudah mudahan saya makin termotivasi atas cerita itu, 😀

      maaf kalo emang bahasa saya ada yang menyinggung,
      dan maksih sekali programer berpengalaman seperti anda mau sudi mampir ke blog saya 😀

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s