2016-11-04 44 views
6

Próbuję zrobić przycisk (w moim przypadku ImageButton), który wskaże lokalizację użytkownika na mapie Google. Robiłem to do tej pory i kiedy naciskałem przycisk w programach symulacyjnych aplikacji; "com.tools.fd.runtime.BootstrapApplication nie będzie działać, dopóki nie zaktualizujesz usług Google Play". Tu jest mój kodu:com.tools.fd.runtime.BootstrapApplication nie będzie działać, dopóki nie zaktualizujesz usług Google Play.

built.gradle

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 23 
buildToolsVersion "25.0.0" 

defaultConfig { 
    applicationId "com.example.konarx.a11042016" 
    minSdkVersion 14 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
} 

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.android.support:appcompat-v7:23.4.0' 
compile 'com.google.android.gms:play-services:9.8.0' 
testCompile 'junit:junit:4.12' 
compile 'com.google.android.gms:play-services-maps:9.8.0' 
} 

MapsActivity.class

package com.example.konarx.a11042016; 

import android.os.Bundle; 

import com.google.android.gms.maps.CameraUpdateFactory; 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.OnMapReadyCallback; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 

public class MapsActivity extends MainScreen implements OnMapReadyCallback { 

private GoogleMap mMap; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_maps); 
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() 
      .findFragmentById(R.id.map); 
    mapFragment.getMapAsync(this); 
} 

@Override 
public void onMapReady(GoogleMap googleMap) { 
    mMap = googleMap; 

    LatLng sydney = new LatLng(-34, 151); 
    mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney")); 
    mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); 
} 
} 
+0

compilesdk 25 i targetsdk 25 ... spróbuj tego – Cliff

Odpowiedz

15

Właśnie w obliczu tego samego problemu.

W swojej build.gradle, downgrade wersji usług Play, aby 9.6.0

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:25.0.0' 
    compile 'com.google.android.gms:play-services:9.6.0' 
    testCompile 'junit:junit:4.12' 
} 
+0

Wypróbowałem i otrzymałem błąd (czerwone podkreślenie) podczas synchronizacji po wprowadzonej przeze mnie zmianie. Dziękuję za odpowiedź ... –

2

używałem nugat (API 25), kiedy to się stało. Używając innego pakietu API (skończyłem używając Marshmallow API 23 na nowym emulatorze) naprawiłem to dla mnie. W moim projekcie korzystałem z wersji Play 10.0.1, a obniżenie poziomu wersji usług Play nie było możliwe, ponieważ Firebase wymagała 10.0.1.