Vista de Google Street + inclinación del dispositivo

Estoy tratando de agregar una actividad como una característica a una aplicación que estoy construyendo donde, la API devolverá un lat largo, y con este lat largo voy a cargar google street view. Que con el movimiento del dispositivo, girará el ángulo de 360 ​​grados de la posición. Estoy luchando en la parte de movimiento del dispositivo. Utilizando los dedos en la pantalla puede girar. Me pregunto si alguien me puede apuntar en la dirección correcta en conseguir el movimiento del dispositivo para afectar a la posición de la vista de la calle?

El código que tengo hasta ahora es:

import android.support.v4.app.FragmentActivity; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import com.google.android.gms.maps.OnStreetViewPanoramaReadyCallback; import com.google.android.gms.maps.StreetViewPanorama; import com.google.android.gms.maps.StreetViewPanoramaFragment; import com.google.android.gms.maps.StreetViewPanoramaOptions; import com.google.android.gms.maps.StreetViewPanoramaView; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.StreetViewPanoramaCamera; import com.google.android.gms.maps.model.StreetViewPanoramaLocation; public class MainActivity extends FragmentActivity implements OnStreetViewPanoramaReadyCallback { private static final String TAG = MainActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); StreetViewPanoramaFragment streetViewPanoramaFragment = (StreetViewPanoramaFragment) getFragmentManager() .findFragmentById(R.id.streetviewpanorama); streetViewPanoramaFragment.getStreetViewPanoramaAsync(this); } @Override public void onStreetViewPanoramaReady(final StreetViewPanorama panorama) { final long duration = 1000; float tilt = 30; float bearing = 90; final StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(panorama.getPanoramaCamera().zoom) .bearing(bearing) .tilt(tilt) .build(); panorama.setPosition(new LatLng(52.208818, 0.090587)); panorama.setStreetNamesEnabled(false); panorama.setZoomGesturesEnabled(false); panorama.setOnStreetViewPanoramaChangeListener(new StreetViewPanorama.OnStreetViewPanoramaChangeListener() { @Override public void onStreetViewPanoramaChange(StreetViewPanoramaLocation streetViewPanoramaLocation) { if (streetViewPanoramaLocation != null) { panorama.animateTo(camera, duration); } Log.d(TAG, "TESTINGGGGGGGGGG"); } }); } } 

One Solution collect form web for “Vista de Google Street + inclinación del dispositivo”

No estoy seguro dado su pregunta, por lo que comentario si estoy equivocado, pero parece que eres capaz de girar a través de esta instrucción

 panorama.animateTo(camera, duration); 

Y se está moviendo a una ubicación específica utilizando la variable "cámara" que construyó antes.

Por lo tanto, si entiendo correctamente lo que está tratando de hacer, usted tiene que comprobar los sensores de teléfono móvil (acelerómetro y posición) para obtener el movimiento a continuación, aplicar el movimiento correcto al panorama. Eche un vistazo a la documentación del sensor de android para obtener los oyentes adecuados (o cómo registrar el uso de un sensor) y luego construya el objeto de cámara correcto de acuerdo con la aceleración registrada por el teléfono (aceleración izquierda -> girar a la izquierda, aceleración derecha – Girando hacia la derecha).

Si necesitas un ejemplo de código te sugiero que busques esta pregunta que tiene otros enlaces para ayudarte a usar sensores y obtener más documentos.

Si esto no ayuda, comente y / o aclare la pregunta.

  • Android parse String hasta la fecha - carácter de patrón desconocido 'X'
  • GetGSMSignalStrength () devuelve siempre 99
  • Spannable en android para textView
  • Eclipse crea extends ActionBarActivity en lugar de actividad
  • Implementar getMaxAmplitude para audioRecord
  • ImageView no se muestra en Nexus 5 (Android 6.0)
  • Transmisión de voz sobre tcp
  • Prueba de estrés en una aplicación de Android
  • Vista de calendario para Android GingerBread y antes (API <11)
  • ExecutorService parece estar ejecutando el hilo en la interfaz de usuario?
  • NumberFormatException en número válido Cadena
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.