Saat upload file APK ke playstore dengan versi API yang lama, ternyata google menolaknya, awalnya saya belum paham apa yang menyebabkan error dan ditolak saat upload ke playstore, setelah membaca aturan terbaru di Google Play Store ternyata, google menerapkan aturan baru bahwa aplikasi sekarang ini minimal dan penargetan harus API 26 supaya dapat berjalan secara optimal.
Informasi dari google play |
Nah masalahnya source code yang saya gunakan kan masih source yang lama, sehingga setelah saya mencoba update Versi API dan target API seluruh source code jadi error semua.
Contoh misalnya class saya menggunakan
ActionBarActivity
Secara actionbar tidak support untuk Versi API 22 ke atas. haduh pusing gaes, mana banyak lagi class di aplikasi.
1. Cara update ActionBarActivity ke versi 22 dan di atasnya
Sejak version 22.1.0, Class ActionBarActivity sudah tidak digunakan lagi. Sehingga kita harus merubahnya ke Class AppCompatActivity
caranya :
Tinggal replace manual saja nama classnya seperti ini :
public class EditProfil extends AppCompatActivity implements{
{
2. Google map beberapa fungsi tidak bisa digunakan setelah update API versi terbaru
GoogleMap gm:
gm = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
gm.getMap();
Salah satu fungsi getmap() di atas sudah tidak bisa digunakan kembali. Duh padahal beberapa bahkan banyak class yang menggunakan fungsu gm.getMap().caranya saya ubah ke Sistem Callback, yaitu dengan menambahkan implements di classnya seperti ini :public class EditProfil extends AppCompatActivity implementsOnMapReadyCallback {}Tinggal kita menambahkan fungsi implemens class tersebut dan menambahkanMapFragmentSelanjutnya tambahkan fungsi callbacknya seperti ini :public void onMapReady(GoogleMap googleMap) {}
Nah, didalam fungsi omMapReady inilah kita bisa berekperimen untuk mapnya seperti membuat jenis tampilan map, setting kompas google map, setMylocation dan sebagainya.
contoh full coding android:
public class AddPostActivity extends AddPostActivity implements OnMapReadyCallback { private UiSettings mUiSettings; private GoogleMap map; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.add_post_activity); MapFragment fm = (MapFragment) getFragmentManager().findFragmentById(R.id.maps_fragment); fm.getMapAsync(this); } @Override public void onMapReady(GoogleMap googleMap) { map.setMapType(GoogleMap.MAP_TYPE_NORMAL); mUiSettings = map.getUiSettings(); mUiSettings.setCompassEnabled(true); mUiSettings.setMyLocationButtonEnabled(false); } }
Silahkan komentar, untuk sharing tentang permasalahan ini. Terima kasih
0 comments:
Post a Comment