Google google mapv2 icono de la URL

Ahora tengo un problema que no puedo buscar y mostrar icono personalizado en Google Maps desde la URL. En cuanto al ejemplo de Google, sólo el icono se mostrará en el mapa de Google. Pero lo que quiero saber es mostrar el icono de la URL.

private Marker melbourne = mMap.addMarker(new MarkerOptions() .position(MELBOURNE) .title("Melbourne") .snippet("Population: 4,137,400") .icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow))); 

Y aquí está mi codificación.

  if(c != null){ if(c.moveToFirst()){ do { googleMap.addMarker(new MarkerOptions() .position(new LatLng(Double.parseDouble(c.getString(2)), Double.parseDouble(c.getString(3)))) .title(c.getString(0)) .icon(BitmapDescriptorFactory.fromBitmap(bmp)) .snippet(c.getString(1))); } while(c.moveToNext()); } } 

Puede descargar Bitmap como

 Bitmap bmp = BitmapFactory.decodeStream(myurl.openConnection().getInputStream()); 

Utilizó un subproceso para obtener el mapa de bits

Entonces

  .icon(BitmapDescriptorFactory.fromBitmap(bmp))); 

De tus comentarios obtienes NetworkOnMainThreadException

Así que usa un hilo.

 Thread thread = new Thread(new Runnable(){ @Override public void run(){ URL url ; try { url = new URL("myurl"); bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream()); } catch (Exception e) { e.printStackTrace(); } runOnUiThread(new Runnable() { @Override public void run() { source = mMap.addMarker(new MarkerOptions() .position(sc) .title("MyHome") .snippet("Bangalore") .icon(BitmapDescriptorFactory.fromResource(bmp))); } }); } }); thread.start(); 

No puede actualizar ui desde un subproceso de fondo. Utilice runOnUiThread .

Usando asycntask

Haga que su asicn taks una clase interna de su actividad. Declare Bitmap como una variable de clase.

  class TheTask extends AsyncTask <Void,Void,Void> { @Override protected void onPreExecute() { // TODO Auto-generated method stub super.onPreExecute(); } @Override protected Void doInBackground(Void... params) { URL url ; try { url = new URL("myurl"); bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream()); } catch (Exception e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(Void result) { super.onPostExecute(result); source = mMap.addMarker(new MarkerOptions() .position(sc) .title("MyHome") .snippet("Bangalore") .icon(BitmapDescriptorFactory.fromResource(R.drawable.pin))); } } 

Utilicé Ion para cargar una imagen. Es una muy buena biblioteca.

Para establecer el icono marcador de url es muy simple.

 try { Bitmap bmImg = Ion.with(context) .load("http://example.com").asBitmap().get(); mMap.addMarker(new MarkerOptions().position(latlng) .icon(BitmapDescriptorFactory.fromBitmap(bmImg))); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } 

espero que esto ayude

  • Cómo mostrar mapas en una aplicación de Android, si los servicios de Google Play no están instalados en un teléfono
  • ¿Cómo cambiar el icono de marcador de lo que fue aprovechado?
  • GoogleMap moveCamera o animateCamera según LatLngBounds no es exacta
  • Cómo mover camra a un marcador específico en google maps v2 en android
  • Error en Google Maps android "android Error al cargar el mapa. No se pudo contactar con los servidores de Google. "
  • Google Maps Android, detecta la interacción del usuario en un mapa de la ubicación
  • Google Maps no se muestra de repente en Android
  • Android animateCamera GoogleMap.CancelableCallback Uso
  • Google maps V2 - Error de autorización, no puedo mostrar el mapa
  • Google mapa cuestión incluso todos los ajustes son correctos según google doc
  • Utilidad de mapas de Android: imágenes de la URL
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.