Android Open Source - interdroid-swan Intent Sensor From Project Back to project page interdroid-swan .
License The source code is released under:
Copyright (c) 2008-2011 Vrije Universiteit, The Netherlands
All rights reserved.
Redistribution and use in source and binary forms,
with or without modification, are permitted provided
that the follo...
If you think the Android project interdroid-swan listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package interdroid.swan.sensors.impl;
/ / f r o m w w w . j a v a 2 s . c o m
import interdroid.swan.ExpressionManager;
import interdroid.swan.R;
import interdroid.swan.SwanException;
import interdroid.swan.ValueExpressionListener;
import interdroid.swan.sensors.AbstractConfigurationActivity;
import interdroid.swan.sensors.AbstractMemorySensor;
import interdroid.swan.swansong.Expression;
import interdroid.swan.swansong.HistoryReductionMode;
import interdroid.swan.swansong.SensorValueExpression;
import interdroid.swan.swansong.TimestampedValue;
import android.os.Bundle;
public class IntentSensor extends AbstractMemorySensor {
public static final String TAG = "Intent" ;
/**
* The configuration activity for this sensor.
*
* @author nick <palmer@cs.vu.nl>
*
*/
public static class ConfigurationActivity extends
AbstractConfigurationActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setResult(
RESULT_OK,
getIntent().putExtra("configuration" ,
IntentSensor.STARTED_FIELD));
finish();
}
@Override
public final int getPreferencesXML() {
return R.xml.intent_preferences;
}
}
public static final String STARTED_FIELD = "started" ;
protected static final int HISTORY_SIZE = 300;
private static final String MAGIC_RELAY = "INTENTS_FROM_LOGCAT" ;
@Override
public String[] getValuePaths() {
return new String[] { STARTED_FIELD };
}
@Override
public void initDefaultConfiguration(Bundle DEFAULT_CONFIGURATION) {
}
@Override
public void onConnected() {
}
@Override
public void register(final String id, final String valuePath,
final Bundle configuration) {
configuration.putString("logcat_parameters" , "'ActivityManager:I'" );
try {
ExpressionManager.registerValueExpression(this , id + "."
+ MAGIC_RELAY, new SensorValueExpression(
Expression.LOCATION_SELF, "logcat" , "log" , configuration,
HistoryReductionMode.ANY, 0),
new ValueExpressionListener() {
@Override
public void onNewValues(String id,
TimestampedValue[] newValues) {
for (TimestampedValue value : newValues) {
// if (value.getValue().toString()
// .contains("Starting: Intent {")) {
if (value.getValue().toString()
.startsWith("START" )) {
putValueTrimSize(valuePath, id,
value.getTimestamp(),
getIntentFrom(value.getValue()),
HISTORY_SIZE);
}
}
}
});
} catch (SwanException e) {
e.printStackTrace();
}
}
private String getIntentFrom(final Object value) {
String string = value.toString();
string = string.substring(string.indexOf("cmp=" ) + 4);
string = string.substring(0, string.indexOf(" " ));
System.out.println("got intent: " + string);
return string;
}
@Override
public void unregister(final String id) {
ExpressionManager.unregisterExpression(this , id + "." + MAGIC_RELAY);
}
@Override
public void onDestroySensor() {
// Nothing to do
}
}
Java Source Code List interdroid.swan.ExpressionListener.java interdroid.swan.ExpressionManager.java interdroid.swan.SensorConfigurationException.java interdroid.swan.SensorInfo.java interdroid.swan.SwanException.java interdroid.swan.TriStateExpressionListener.java interdroid.swan.ValueExpressionListener.java interdroid.swan.crossdevice.Converter.java interdroid.swan.crossdevice.CrossDeviceReceiver.java interdroid.swan.crossdevice.Pusher.java interdroid.swan.crossdevice.Registry.java interdroid.swan.crossdevice.SwanGCMConstants.java interdroid.swan.crossdevice.SwanLakeActivity.java interdroid.swan.engine.EvaluationEngineReceiver.java interdroid.swan.engine.EvaluationEngineService.java interdroid.swan.engine.EvaluationManager.java interdroid.swan.engine.ExpressionViewerActivity.java interdroid.swan.engine.QueuedExpression.java interdroid.swan.engine.SensorSetupFailedException.java interdroid.swan.engine.SensorViewerActivity.java interdroid.swan.engine.TextProgressBar.java interdroid.swan.sensors.AbstractConfigurationActivity.java interdroid.swan.sensors.AbstractCuckooSensor.java interdroid.swan.sensors.AbstractMemorySensor.java interdroid.swan.sensors.AbstractSensorBase.java interdroid.swan.sensors.AbstractVdbSensor.java interdroid.swan.sensors.MonitorThread.java interdroid.swan.sensors.SensorInterface.java interdroid.swan.sensors.TimeSensor.java interdroid.swan.sensors.impl.BatterySensor.java interdroid.swan.sensors.impl.BluetoothSensor.java interdroid.swan.sensors.impl.CalendarSensor.java interdroid.swan.sensors.impl.CallSensor.java interdroid.swan.sensors.impl.GyroscopeSensor.java interdroid.swan.sensors.impl.IntentSensor.java interdroid.swan.sensors.impl.LightSensor.java interdroid.swan.sensors.impl.LocationSensor.java interdroid.swan.sensors.impl.LogCatSensor.java interdroid.swan.sensors.impl.MagnetometerSensor.java interdroid.swan.sensors.impl.MovementSensor.java interdroid.swan.sensors.impl.PolarHeartRate.java interdroid.swan.sensors.impl.PressureSensor.java interdroid.swan.sensors.impl.ProximitySensor.java interdroid.swan.sensors.impl.ScreenSensor.java interdroid.swan.sensors.impl.SignalStrengthSensor.java interdroid.swan.sensors.impl.SmartLocationSensor.java interdroid.swan.sensors.impl.SoundSensor.java interdroid.swan.sensors.impl.TemperatureSensor.java interdroid.swan.sensors.impl.TwitterSensor.java interdroid.swan.sensors.impl.WifiSensor.java interdroid.swan.sensors.impl.package-info.java interdroid.swan.swansong.BinaryLogicOperator.java interdroid.swan.swansong.ComparatorResult.java interdroid.swan.swansong.Comparator.java interdroid.swan.swansong.ComparisonExpression.java interdroid.swan.swansong.ConstantValueExpression.java interdroid.swan.swansong.ExpressionFactory.java interdroid.swan.swansong.ExpressionParseException.java interdroid.swan.swansong.Expression.java interdroid.swan.swansong.HistoryReductionMode.java interdroid.swan.swansong.LogicExpression.java interdroid.swan.swansong.LogicOperator.java interdroid.swan.swansong.MathOperator.java interdroid.swan.swansong.MathValueExpression.java interdroid.swan.swansong.ParseableEnum.java interdroid.swan.swansong.Parseable.java interdroid.swan.swansong.Result.java interdroid.swan.swansong.SensorValueExpression.java interdroid.swan.swansong.TimestampedValue.java interdroid.swan.swansong.TriStateExpression.java interdroid.swan.swansong.TriState.java interdroid.swan.swansong.UnaryLogicOperator.java interdroid.swan.swansong.ValueExpression.java interdroid.swan.ui.EnterConstantDialog.java interdroid.swan.ui.ExpressionBuilderActivity.java interdroid.swan.ui.LaunchService.java interdroid.swan.ui.MergeExpressionDialog.java interdroid.swan.ui.NewExpressionDialog.java interdroid.swan.ui.NewMathExpressionDialog.java interdroid.swan.ui.SelectComparatorDialog.java interdroid.swan.ui.SelectExpressionDialog.java interdroid.swan.ui.SelectOperatorDialog.java interdroid.swan.ui.SelectSensorDialog.java interdroid.swan.ui.SelectTypedValueDialog.java interdroid.swan.ui.package-info.java interdroid.swan.util.SeekBarPreference.java interdroid.swan.util.TimePreference.java