# Broadcast Intent action ausählen



## Gast2 (23. Okt 2012)

Hallo,

ich habe hier mein kleines Programm, welches ein Broadcast aussenden soll, wenn eine Bewegung ausgeführt wird.

```
package de.broadcastsendgesture;

import android.app.Activity...

public class BroadcastSendActivity extends Activity {

	private boolean pause;
	private int x, y, z, threshold;
	private SensorManager manager;
	private Sensor sensorLineAccelerometer;
	private SensorEventListener listener;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		manager = (SensorManager) getSystemService(SENSOR_SERVICE);
		sensorLineAccelerometer = manager
				.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION);
		pause = false;
		threshold = 12;
		sensorMonitoring();
	}

	/**
	 * Beobachten und Auswerten der Sensorenwerte.
	 */
	private void sensorMonitoring() {
		listener = new SensorEventListener() {
			@Override
			public void onAccuracyChanged(Sensor sensor1, int accuracy) { }

			@Override
			public void onSensorChanged(SensorEvent event) {
				// Sensordaten in Variablen x, y und z schreiben
				x = Math.abs(((int) (event.values[0] + 0.5f)));
				y = Math.abs(((int) (event.values[1] + 0.5f)));
				z = Math.abs(((int) (event.values[2] + 0.5f)));
				// Wenn keine Auswertung passieren soll, so steht der Wert "pause" auf true
				if (!pause) {
					// wenn ein Wert den Schwellwert überschreitet ...
					if (x >= threshold || y >= threshold || z >= threshold) {
						pause = true;
						interpretation();
					}
				}
			}

			private void interpretation() {
				Intent intent = new Intent(Intent.ACTION_TIME_CHANGED);
				sendBroadcast(intent);
			}
		};

		manager.registerListener(listener, sensorLineAccelerometer,
				SensorManager.SENSOR_DELAY_NORMAL);
		listener = null;
	}
}
```

In Zeile 49 habe ich die Intent action auf ACTION_TIME_CHANGED stehen, was nur ein Lückenfüller sein soll.
Eigentlich ist das ja eine neue action, die hier weiter gegeben werden soll.
Aber die actions sind nicht frei gestaltbar.
*Was für eine action gibt man dem intent-Objekt hier sinnvoller Weise mit?*
(Es soll mich informieren, wenn eine Bewegung gamacht wurde.)

Frank


----------



## Gast2 (23. Okt 2012)

Ich vermute es sollte so aussehen:

```
intent.setAction("de.ACTION_SET_GESTURE");
```


----------



## schlingel (24. Okt 2012)

> Aber die actions sind nicht frei gestaltbar.


Seit wann?

Ich nehme immer als Action-Namen Server-Package-Name + Ausgesuchter Name.

Du musst dann eben einen passenden BroadcastReceiver registrieren.


----------

