Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Quiero crear una aplicación para Android con un mapa que proporcione direcciones, pero no Google Maps

Quiero hacer una aplicación para Android que cargue un mapa que he creado del interior de un edificio. Quiero que proporcione direcciones entre una habitación a otra. Y entre los pisos si es posible.

Quisiera que el mapa fuera zoomable, y clickable también. Es decir, puede hacer clic en dónde se encuentra y dónde desea ir, y la aplicación proporcionará las direcciones. O usted entra en cuadros de texto qué sitio usted está en, y donde usted quiere ir, y otra vez, las direcciones se proporcionan.

Me tropecé con algo que le permitió utilizar un mapa de código abierto y añadir sus propios nodos a cada esquina, o lugar de referencia. Pero no puedo encontrar el sitio más, después de una hora de búsqueda de Google.

¿Alguien tiene alguna idea de cómo podría hacer esto?

  • Analizar objeto JSON con cadena y sólo valor
  • Android: escala y comprime un mapa de bits
  • Conversión de mapa de bits: Creación de mapa de bits que excluye los lados transparentes del mapa de bits transparente
  • Android Map API v2 no muestra mapa en algunos dispositivos
  • Extraño problema MapView; Error de PixelConverter
  • Android - fuera de la excepción de memoria al crear mapa de bits
  • Diferentes marcadores con nombre en Google Android Map
  • Combo de IdentityHashMap y WeakHashMap
  • 4 Solutions collect form web for “Quiero crear una aplicación para Android con un mapa que proporcione direcciones, pero no Google Maps”

    Éste es uno de ellos casos donde la idea suena simple pero realmente no es. Hay muchas tareas que hay que resolver, algunas de las cuales ya se han hablado.

    1) Cómo modelar la oficina. Esto tiene que hacerse para que sea fácil para que el modelo, pero el archivo es pequeño. Tiene que ser en un formato que su camino que encuentra el algoritmo puede entender. Esto significa que a medida que desarrolla el camino descubriendo que va a hacer cambios en los datos.

    2) Localización de localización / entrada. Hecho por hardware (gps no lo cortará) o el usuario dice dónde están. Podría hacerse con NFC y etiquetas colocadas en la oficina, no una solución ideal, las etiquetas tienen que ser visibles. El usuario puede ingresar su ubicación, pero pueden perderse y no saber dónde están.

    3) ¿Cómo presentar los datos, usted podría escribir una aplicación 3D mágico que muestra una misión imposible diseño del edificio. Que será de seis meses de trabajo en sí mismo! Recuerde, su mapa está en 3D, mapas de carreteras tienden a ser 2D. (Con algunos overs de la mosca …)

    4) Seguimiento del progreso. La aplicación realmente necesita saber cómo lo está haciendo así que si sale de la ruta le dirá que regrese. Esto de nuevo será difícil de lograr en el interior. El seguimiento de progreso es un área en la que los fabricantes de dispositivos de navegación personal (PND, por sus siglas en inglés) mantienen el tiempo, ya que realmente afecta la confianza del usuario en el software.

    Después de haber trabajado en TomTom todo lo que puedo decir que podría estar en esto durante años.

    Como se trata de un proyecto de collage, ¿podría sugerir un proyecto más simple?

    Hazlo con mapa en 2D, mapa basado en cuadrícula simple un poco como el ratón clásico en un problema de laberinto. Implementar A * para encontrar la ruta. Una vez hecho usted podría entonces si usted tiene tiempo lo extiende para su plan original.

    Un libro que he encontrado muy bueno en el pasado es "Juego de Programación AI por ejemplo". ISBN 1-55622-078-2. Capítulo 8 es todo sobre la búsqueda de camino y tiene una parte muy agradable en A *.

    Buena suerte. 🙂

    Si bien esta puede no ser la respuesta que busca:

    Siempre se puede escribir una aplicación que hace esto. Si ya está dispuesto a posicionar los nodos en el mapa, podría escribir hipotéticamente un programa que utiliza un algoritmo de búsqueda de juegos (principalmente utilizado), como A *, y calcular una ruta desde allí. Sería difícil, pero creo que al colocar los nodos y vector de mapeo con un costo asociado con los vectores (tal vez medido en pies / metros o algo así), puede ser capaz de establecer que con A *. ..

    Difícil de decir. Intenté un Google rápido y subí vacío también.

    Puede crear una MapActivity que puede alojar un MapView ( MapView no se puede incrustar en ninguna otra actividad ), que es un mapa interactivo honesto a bueno, pero no es exactamente completo.

    MapView se utiliza principalmente para mostrar un mapa de un área específica con superposiciones personalizadas en él. Puede configurar el enfoque del mapa, el nivel de zoom, si muestra los datos de tráfico y algunas otras opciones menores. Pero más allá de eso, tendría que construir la superposición de la ruta de su auto. Y no hay ningún tipo de turno por función de dirección de giro o nada. Son sólo "mudo" superposiciones.

    Sin embargo, Google DID ha actualizado recientemente la aplicación Google Maps para incluir mapas y navegación en interiores. Proporcionan un sitio al que puede ir y presentar un plano de planta de su edificio, por lo que se puede agregar a la aplicación oficial.

    Una vez que su plan de piso se agrega oficialmente, usted podría apenas lanzar la aplicación oficial para hacer su navegación para usted usando una intención como esto:

    Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?saddr=20.344,34.34&daddr=20.5666,45.345")); startActivity(intent); 

    Yo había enfrentado exactamente el mismo tipo de problema durante mi proyecto de maestría. Sin embargo, mi solución no es realmente completa, pero así es como lo planeé. Yo de todos modos no podía implementarlo completamente debido a varias restricciones. Esto puede sonar complejo, pero no estoy muy seguro de cómo ponerlo a través.

    1. Almacenar mapas de forma estática y no dinámicamente – lo que quiero decir es, imágenes / fotos apareciendo cuando alguien quiere ir de una habitación a otra o de un piso a otro. El enrutamiento dinámico es un poco difícil. Tenga fotografías almacenadas antes de la mano para que aparezcan.

    2. Desarrolle el algoritmo de trayectoria más corta algo como el algoritmo de Dijkstra. Obtendrá programas de java preparados para la ejecución de este algoritmo. Utilizando esto, puede obtener rutas. Una vez que el mapa está disponible, lo que hace clic y añadir opciones de zoom no debería ser un gran problema.

    Combinar los dos pasos de alguna manera (lo siento, no hay código aquí 'cuz yo mismo no podía llegar a uno). Como Richard dice arriba, tenía NFC en mi mente para implementarlo (todo mi proyecto estaba basado en esto). NFC es básicamente una tecnología RFID y por lo tanto inalámbrica. Puede utilizar 802.11 b / g / n para implementar el lado de red de la misma. Si necesita más ayuda, por favor hágamelo saber. Ayudará cuanto pueda.

    Todo lo mejor.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.