0
私はRajawaliVRのデモに取り組んでいます。google-cardboardの磁気ボタンを使ってビデオを再生/一時停止したいのですが、どうすればこれを実現できますか。google-cardboardの磁気ボタンを使って電話でビデオを再生/一時停止する方法は?
私はRajawaliVRのデモに取り組んでいます。google-cardboardの磁気ボタンを使ってビデオを再生/一時停止したいのですが、どうすればこれを実現できますか。google-cardboardの磁気ボタンを使って電話でビデオを再生/一時停止する方法は?
私のヘルパークラスを使用してボタンを聞くことができ、いくつかのアクションはインターフェイスクラスを介してメインアクティビティに送信されます。ここにコードは
/**
* Created by volkanugur
*
* WORK WITH CARDBOARD VERSION 1
* =============================
* MAGNET
* ========== N-S ============
*/
public class CardBoardButtonHelper extends Service implements SensorEventListener {
private SensorManager sensorManager = null;
private float __SENSOR_OLD_POSITION__ = -1;
long timestamp = 0;
long timestamp_ee = 0;
Singleton __ = Singleton.getInstance();;
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
super.onCreate();
initsensor();
}
private void initsensor() {
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
// Register magnetic sensor
sensorManager.registerListener(this,
sensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD),
SensorManager.SENSOR_DELAY_UI);
}
@Override
public void onSensorChanged(SensorEvent event) {
synchronized (this) {
if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD) {
float X = event.values[0];
Log.e("Sens",X+"");
if (__SENSOR_OLD_POSITION__!=-1) {
if (Math.abs(X - __SENSOR_OLD_POSITION__) > 50) {
if (Math.abs(timestamp_ee-timestamp)>1300) {
Vibrator v = (Vibrator) __.get__MAIN__().getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(500);
((CardButtonTrigger) (__.get__MAIN__())).CardButton_Triggered();
timestamp_ee = System.currentTimeMillis();
}
timestamp = System.currentTimeMillis();
}
}
__SENSOR_OLD_POSITION__ = X;
}
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}
このコードの使い方はありますか?そのシングルトンクラスはどこですか? – snehasish
こんにちは! 、このクラスはサービスのシングルトンはストアコンテキストといくつかの整数アドレスですので、それらのアルゴリズムを引き出してアプリケーションを配置することができます。 –