Local blog covering the latest news, updates, and stories for Indonesian speaking developers.
Meningkatkan ulasan dan rating di Google Play
27 December 2016
Ditulis oleh Andrew Ahn, Product Manager dan Buddhika Kottahachchi, Product Manager
Play Store berisi katalog aplikasi yang terbesar di dunia. Karena pengguna memutuskan aplikasi yang ingin mereka pasang, kami ingin memastikan Play menyediakan pengalaman terpercaya.
Belum lama ini, kami telah
mengumumkan
perkembangan kami dalam memerangi pemasangan aplikasi penipuan dan spam. Untuk terus memerangi perilaku penyebaran spam, kami juga memperbaiki cara mengenali dan membuang ulasan dan rating palsu. Dengan adanya perbaikan pada kemampuan ini, kini kami dapat lebih akurat mengenali dan membuang ulasan dan rating palsu.
Dalam beberapa kasus, Anda tidak perlu mengambil tindakan apa pun. Jika Anda menunjuk pihak lain untuk mempromosikan aplikasi (mis. agen pemasaran pihak ketiga), sebaiknya Anda memeriksa dan memastikan bahwa teknik promosi mereka menggunakan cara-cara yang sah, dan sesuai dengan
Kebijakan Developer Google Play
. Aturan dasar pemberian ulasan dan rating adalah keduanya harus berasal dari pengguna sebenarnya, dan developer tidak boleh berusaha memanipulasinya dengan cara apapun (mis. memalsukan, membayar, memberikan insentif).
Kami akan terus melakukan penyempurnaan sistem yang akan semakin membantu melindungi integritas Google Play, komunitas developer, dan terutama pengguna akhir.
Mengurangi ukuran pembaruan aplikasi sebesar 65%
20 December 2016
Ditulis oleh Andrew Hayden, Software Engineer di Google Play
Pengguna Android mengunduh puluhan juta aplikasi dan game di Google Play. Kami juga memperhatikan para developer sering memperbarui aplikasi mereka agar pengguna memperoleh konten terbaik, meningkatkan keamanan, dan menyempurnakan pengalaman pengguna secara keseluruhan. Dibutuhkan banyak data untuk mengunduh pembaruan ini dan kami tahu pengguna peduli tentang besarnya data yang digunakan perangkat mereka. Di awal tahun ini, kami mengumumkan bahwa kami mulai menggunakan
algoritme bsdiff
(oleh Colin Percival)
. Dengan menggunakan bsdiff, kami mampu mengurangi ukuran pembaruan aplikasi rata-rata sebesar 47% dibandingkan dengan ukuran APK utuh.
Saat ini, kami dengan senang menyampaikan sebuah pendekatan baru yang lebih baik yaitu
patching File-by-File
.
Pembaruan Aplikasi yang menggunakan patching File-by-File,
rata-rata,
65% lebih kecil daripada aplikasi utuh
, dan seringkali 90% lebih kecil, atau lebih.
Penghematan per harinya, dibandingkan dengan pendekatan sebelumnya, meningkat hingga 6 petabyte data pengguna yang disimpan per hari!
Untuk mendapatkan versi aplikasi terbaru, Google Play mengirimkan patch ke perangkat Anda yang menjelaskan
perbedaan
antara aplikasi versi lama dan baru.
Bayangkan jika Anda adalah seorang penulis sebuah buku yang akan segera diterbitkan, dan ingin mengubah satu kalimat - tentu jauh lebih mudah untuk memberi tahu editor tentang kalimat yang akan diubah dan apa yang harus diubah, daripada mengirim sebuah buku yang sama sekali baru. Dengan cara yang sama, patch jauh lebih kecil dan lebih cepat untuk diunduh dari pada APK secara utuh.
Teknik yang digunakan dalam patching File-by-File
Aplikasi Android dikemas sebagai APK, yang merupakan file ZIP dengan konvensi khusus. Sebagian besar materi dalam file ZIP (dan APK) dikompresi dengan menggunakan teknologi yang disebut
Deflate
. Deflate sangat baik mengkompresi data namun memiliki kelemahan: sangat sulit mengidentifikasi perubahan dalam materi asli (tanpa kompresi). Bahkan perubahan kecil terhadap materi asli (seperti mengubah satu kata dalam sebuah buku) dapat membuat output terkompresi oleh deflate terlihat
sama sekali berbeda
. Menjelaskan perbedaan antara materi
asli
itu mudah, tetapi menjelaskan perbedaan antara materi
yang dikompresi
itu sangat sulit sehingga bisa menyebabkan patch yang tidak efisien.
Perhatikan betapa banyaknya teks terkompresi di sisi kanan telah berubah dengan satu huruf dalam teks yang tidak dikompresi di sebelah kiri:
Oleh karenanya, File-by-File didasarkan pada mendeteksi perubahan dalam data yang tidak dikompresi. Untuk menghasilkan sebuah patch, kami terlebih dahulu melakukan dekompresi file lama dan baru sebelum komputasi delta (kami masih menggunakan bsdiff di sini). Lalu untuk menerapkan patch, kami melakukan dekompresi pada file lama, menerapkan delta ke materi tanpa kompresi dan kemudian mengkompresi ulang file baru. Dalam melakukannya, kami harus memastikan bahwa APK pada perangkat Anda adalah pasangan yang sesuai, di setiap byte-nya, dengan APK yang ada di Play Store (lihat
APK Signature Schema v2
untuk mengetahui sebabnya).
Ketika mengkompresi ulang file baru, kami menjumpai dua komplikasi. Pertama, Deflate memiliki sejumlah setelan yang memengaruhi hasil; dan kami tidak tahu setelan mana yang digunakan pertama kali. Kedua, banyak versi deflate yang ada dan kami harus mengetahui apakah versi pada perangkat Anda sesuai.
Untungnya, setelah analisis aplikasi di Play Store, kami telah menemukan bahwa versi deflate terbaru dan kompatibel didasarkan pada akun zlib (pustaka deflate terpopuler) untuk hampir semua materi terkompresi di Play Store. Selain itu, setelan default (level=6) dan setelan kompresi maksimum (level=9) adalah satu-satunya setelan yang sebenarnya kami jumpai.
Dengan mengetahui hal ini, kita dapat mendeteksi dan mereka ulang setelan deflate awal. Hal ini memungkinkan pemekaran data, penerapan patch, dan kemudian pengompresian ulang data kembali ke
byte yang persis sama
dengan yang pertama kali diunggah.
Namun, ada satu hal yang dibutuhkan; daya pemrosesan tambahan pada perangkat. Pada perangkat modern (mis. dari tahun 2015), kompresi ulang memerlukan lebih dari satu detik per megabyte dan pada perangkat yang lebih kuno atau kurang canggih, waktu ini bisa lebih lama lagi. Analisis sejauh ini menunjukkan bahwa rata-rata, jika ukuran patch menjadi setengahnya maka waktu yang dihabiskan untuk menerapkan patch (yang untuk File-by-File meliputi kompresi ulang) menjadi dua kali lipat.
Untuk saat ini, kami membatasi penggunaan teknologi patching baru ini untuk pembaruan otomatis saja, yaitu pembaruan yang berlangsung di latar belakang, biasanya pada malam hari ketika ponsel Anda terhubung ke listrik dan Anda kemungkinan tidak sedang menggunakannya. Ini memastikan bahwa pengguna tidak perlu menunggu lebih lama dari biasanya sampai pembaruan selesai ketika sedang memperbarui aplikasi secara manual.
Seberapa efektifkah Patching File-by-File?
Berikut adalah contoh dari pembaruan aplikasi yang sudah menggunakan Patching File-by-File:
Aplikasi
Ukuran Awal
Ukuran Patch (BSDiff) Sebelumnya
(% vs awal)
Ukuran Patch File-by-File (% vs awal)
Farm Heroes Super Saga
71,1 MB
13,4 MB (-81%)
8,0 MB (-89%)
Google Maps
32,7 MB
17,5 MB (-46%)
9,6 MB (-71%)
Gmail
17,8 MB
7,6 MB (-57%)
7,3 MB (-59%)
Google TTS
18,9 MB
17,2 MB (-9%)
13,1 MB (-31%)
Kindle
52,4 MB
19,1 MB (-64%)
8,4 MB (-84%)
Netflix
16,2 MB
7,7 MB (-52%)
1,2 MB (-92%)
Peringatan: jika anda melihat ukuran patch yang berbeda ketika Anda menekan "pembaruan" secara manual, itu karena kami saat ini tidak sedang menggunakan File-by-file untuk pembaruan interaktif, melainkan hanya pembaruan yang dilakukan di latar belakang.
Menyimpan data dan membuat pengguna kami (& developer!) senang
Perubahan ini dirancang untuk memastikan komunitas kami yaitu lebih dari satu miliar pengguna Android menggunakan data sesedikit mungkin untuk pembaruan reguler aplikasi. Hal terbaiknya adalah bahwa sebagai developer Anda tidak perlu melakukan apa pun. Anda mendapatkan pengurangan terhadap ukuran pembaruan Anda ini secara gratis!
Jika Anda ingin tahu lebih banyak tentang patching File-by-File, termasuk rincian teknisnya, masuklah ke
proyek Archive Patcher GitHub
tempat Anda bisa memperoleh informasi, termasuk kode sumbernya. Ya, patching File-by-File benar-benar sumber terbuka!
Sebagai developer, jika Anda masih tertarik dalam mengurangi ukuran APK, berikut beberapa
tips umum tentang cara mengurangi ukuran APK
.
Survei Dukungan Developer Google Play
08 December 2016
Hello from Google Play!
Sebagai bagian penting dari komunitas developer Android di Indonesia, kami ingin masukan Anda tentang pengalaman Anda dengan Google Play.
Beritahu kami tentang pengalaman Anda dengan tim dukungan Google Play dengan mengisi survei singkat di bawah ini, dalam bahasa preferensi Anda.
Survei Bahasa Inggris
Survei Bahasa Indonesia
Waktu yang diperlukan: 10-15 menit
Pendapat Anda akan sangat berharga dan akan membantu komitmen kami untuk memberi pengalaman dukungan yang terbaik. Terima kasih!
- The Google Play Team
Labels
#GoogleforGames
#JetpackCompose
#TheAndroidShow
#WeArePlay
10 years
64bit
actions on google
ad blocking
admob
Ads
adventure games
agency
AI
amp
android
android 13
Android 14
Android 15
Android betas
android dev summit
android developers
android development
Android Emulator
Android Jetpack
Android release
android sdk
android studio
Android Studio Emulator
android studio flamingo
Android Studio Iguana
Android UI
androidstudio
anniversary
announcement
anthos
apac
api
aplikasi
App
app development
Apps
arcore
Artificial Intelligence
assistant
augmented reality
bangkit
Baseline Profiles
beginner
best practices
beta
big query
CameraX
case study
chrome
chrome ads
chrome os
Cloud
coalition
coalition for better ads
compose
conferencing
coroutine
DAC/Develop
DAC/Google
dart
data
data binding
data flow
data science
develop
developer
Developer Preview
developer stories
developer tools
developer wear os 4
developers
dialogflow
documentation
domains
doubleclick
ecosystem
emojis
entepreneur
entrepreneurs
events
explore
featured
film
firebase
flutter
flutter 3
flutter app development
flutter3
foldables
game
Game Development
Games
Gemini
Gemini Pro
Generative AI
Global Game Jam
gmail
google
google bisnisku
google cloud
google code-in
google design
Google Developers
google font
google for entrepreneurs
Google for Games Developer Summit
google io
google maps
google partners
google photos
google pixel
google pixel fold
google pixel tablet
google play
Google Play Academy
Google Play Console
Google Play Developers
Google Play Devs
Google Play Indie games accelerator
google play policy
Google Play x Unity Game Developer Training
google sign-in
googleforstartup
GooglePlay
graphics
gsuite
how to
how-to guide
hybrid interface
indie developers
indie game developers
indie games
Indie Games Accelerator
indonesia
insight
ios
Javascript
jetpack
jetpack compose
jetpack compose 1.5
JuaraGCP
kebijakan
kotlin
kubernetes
latest
launchpad
launchpad accelerator
Learn
Localization
lyft
Machine
machine learning
MAD
material design
meet
Meta
mobile
Mobile App Development
mobile games
modifier
now
OnePlus
opensource
pagespeed
partial
PGS
Pixel Fold AVD
Pixel Tablet AVD
platform
Platform_Update
play console
play privacy
play quality
play security
play store
Policy Bytes
Policy webinar
privacy
Problem Solving
Productivity
progressive web app
Project IDX
python
release notes
releases
reporting api
roadmaps
screen
screensharing
security
shapes
Sharing
small business
Solve
spotify
startup
student developers
subs
success stories
Tablets
tensorflow
testing
text-to-speech
The Android Show
theandroidshow
training
transparency
tutorial
Tutorials
twitter
update
usecase
users
Video
videocall
vr
Wear OS
web
windowmanager
workmanager
Archive
2024
Mar
Feb
Jan
2023
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2022
Dec
Nov
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2021
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2020
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2019
Dec
Nov
Oct
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2018
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2017
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2016
Dec
Nov
Subscribe
Follow @googledevsid
Visit
Google Developers
for docs, event info, and more.