Git Product home page Git Product logo

funf-open-sensing-framework's Introduction

= Funf - Open Sensing Framework =

== Building the project ==
The Funf project can be used as an Android library, or can be packaged as a jar file.  
The typical method of using Funf is by using the Funf jar file.  To build the funf jar 
file, use the 'release' target of the Ant build script.  (Make sure you have ant 1.8.* 
or later installed.)  Then, copy the jar file (bin/funf.jar) to the libs directory of your project.
The Android build scripts (Command line Ant or in Eclipse) will take care of compiling
the jar.

If you think that you will be making frequent changes to the Funf library, you may
want to integrate Funf as a library project.
To use it as an Android library, add this project as a library dependency of your 
Android application project.  See the following links for more details.
http://developer.android.com/guide/developing/projects/projects-eclipse.html#ReferencingLibraryProject
or
http://developer.android.com/guide/developing/projects/projects-cmdline.html#ReferencingLibraryProject

funf-open-sensing-framework's People

Contributors

alanlgardner avatar codys avatar pararthshah avatar

Watchers

 avatar  avatar

funf-open-sensing-framework's Issues

Wifi probe sometimes doesn't find any wifi points if off

Wifi probe does not detect any wifi points when the wifi is off initially.  
Even though the probe appears to turn on the wifi, when it scans it does not 
find any points.

We may need to wait a short amount of time for the Wifi antenna to initialize.

Original issue reported on code.google.com by [email protected] on 3 Nov 2011 at 5:15

Option to remove private user data hash, or two-way encrypt

Currently certain private data is automatically one-way hashed.  This is the 
desired behavior in most cases, but some experiments require access to the raw 
data.  There should be an option to not has these fields, or to two-way encrypt 
them with a separate key than the file encryption key.

Original issue reported on code.google.com by [email protected] on 20 Nov 2011 at 8:04

LocationProbe occasionally has null pointer exception




java.lang.NullPointerException
at edu.mit.media.funf.probe.builtin.j.onLocationChanged(Unknown Source)
at 
android.location.LocationManager$ListenerTransport._handleMessage(LocationManage
r.java:191)
at 
android.location.LocationManager$ListenerTransport.access$000(LocationManager.ja
va:124)
at 
android.location.LocationManager$ListenerTransport$1.handleMessage(LocationManag
er.java:140)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)

Original issue reported on code.google.com by [email protected] on 6 Oct 2011 at 3:16

Unicode safety for scripts

All data processing scripts need to work for unicode data.  This includes 
accounting for encodings and testing on data sets with varying unicode 
characters.

Original issue reported on code.google.com by [email protected] on 15 Nov 2011 at 5:05

Activity Probe doesn't send out frequent messages when Accelerometer probe is also on

The activity probe does not receive its parameters right now.  So it is 
difficult to know when the activity probe should emit data.  Right now the 
implementation is to wait until 2 seconds of no accelerometer data.  However, 
we should be taking into account parameters that were registered with the 
activity probe and send out data broadcasts in minimum or maximum durations.

Original issue reported on code.google.com by [email protected] on 3 Nov 2011 at 3:10

Differing probe configurations per device

Device should be able to send its UUID to the server to customize the 
configuration it gets.  For instance:

"configUpdateUrl": "http://www.sampleserver.com/config/$deviceId"

would request data from

http://www.sampleserver.com/config/sdf934-234n23j-3243n-3420


Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:14

Merge arbitrary Probe parameters

Figure out how we can merge arbitrary params through value comparison  (Default 
comparators, as well as custom ones for more complicated parameters).  This is 
important for schedule merging.

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:28

Record funf errors in log

Should copy probe (or all funf) errors in log to a text file that will be or to 
the database, so that it is uploaded with all of the rest of the data.

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:25

No Encryption Mode

Option for no encryption on files.  Though not recommended for production 
cases, it may make it easier for testing on the phone, or may be necessary for 
apps that read data from the database.

Original issue reported on code.google.com by [email protected] on 7 Nov 2011 at 3:14

Data integrity script

A script that outputs a report on the data integrity of a merged data db file.  
This would include
  * Data holes
  * Comparing configuration to actual data collected and reporting discrepancies
  * Tolerance parameters to tune how strict data collection should be
  * Per phone (installation), and per probe options

Original issue reported on code.google.com by [email protected] on 2 Nov 2011 at 5:49

Consistent probe logging

Analyze logging needs for probe for developers, and make consistent proper 
level logging for all Funf internals.

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:05

Unregistering receiver that is not registered in ScreenProbe


v0.1.0
Oct 6, 2011 11:39:16 AM
1 reports/week
1 reports
java.lang.RuntimeException: Unable to stop service 
edu.mit.media.funf.probe.builtin.ScreenProbe@47cff010: 
java.lang.IllegalArgumentException: Receiver not registered: 
edu.mit.media.funf.probe.builtin.m@47eaa710
at android.app.ActivityThread.handleStopService(ActivityThread.java:3090)
at android.app.ActivityThread.access$3700(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2099)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: Receiver not registered: 
edu.mit.media.funf.probe.builtin.m@47eaa710
at 
android.app.ActivityThread$PackageInfo.forgetReceiverDispatcher(ActivityThread.j
ava:793)
at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:938)
at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:331)
at edu.mit.media.funf.probe.builtin.ScreenProbe.f(Unknown Source)
at edu.mit.media.funf.probe.Probe.s(Unknown Source)
at edu.mit.media.funf.probe.Probe.onDestroy(Unknown Source)
at android.app.ActivityThread.handleStopService(ActivityThread.java:3076)
... 10 more

Original issue reported on code.google.com by [email protected] on 12 Oct 2011 at 4:29

Support Large Data Probes

Raw audio and video probes have too much data to be transported via intents.  
We should come up with a mechanism for transferring large amounts of data to 
probe data requesters.

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:17

Developer Sign Up page missing fields

http://funf.media.mit.edu/developers.html

Has input fields only for Email and Verification.
It fails due to: 
____________________
Attention! Please correct the errors below and try again.
•Your name is required.
•Your phone number is required.
•You must enter a message to send.
____________________


Original issue reported on code.google.com by [email protected] on 5 Oct 2011 at 10:09

Unable to git clone source

$ git clone https://code.google.com/p/funf-open-sensing-framework/
Cloning into funf-open-sensing-framework...
error: Connection time-out while accessing 
https://code.google.com/p/funf-open-sensing-framework/info/refs

fatal: HTTP request failed

Original issue reported on code.google.com by [email protected] on 5 Oct 2011 at 10:06

Restrict usage by package name, in addition to permissions

A flag that would limit all probe broadcasts to be broadcast to only packages 
that were specifically allowed.  This would allow Funf to expose Probe services 
to the world, but contain their usage to only a limited set of apps.  Useful 
for developers who are developing  a suite of apps

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:02

Location Probe has Null pointer exception onLocationChange




v0.1.2
Oct 10, 2011 6:55:11 AM
1 reports/week
1 reports
java.lang.NullPointerException
at edu.mit.media.funf.probe.builtin.j.onLocationChanged(Unknown Source)
at 
android.location.LocationManager$ListenerTransport._handleMessage(LocationManage
r.java:227)
at 
android.location.LocationManager$ListenerTransport.access$000(LocationManager.ja
va:160)
at 
android.location.LocationManager$ListenerTransport$1.handleMessage(LocationManag
er.java:176)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3701)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:862)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620)
at dalvik.system.NativeStart.main(Native Method)
v0.1.0
Oct 5, 2011 4:11:37 PM
1 reports/week
1 reports
java.lang.NullPointerException
at edu.mit.media.funf.probe.builtin.j.onLocationChanged(Unknown Source)
at 
android.location.LocationManager$ListenerTransport._handleMessage(LocationManage
r.java:191)
at 
android.location.LocationManager$ListenerTransport.access$000(LocationManager.ja
va:124)
at 
android.location.LocationManager$ListenerTransport$1.handleMessage(LocationManag
er.java:140)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)

Original issue reported on code.google.com by [email protected] on 12 Oct 2011 at 4:26

Survey Probe

A probe that can launch an activity that shows a survey to be filled out by the 
user

Original issue reported on code.google.com by [email protected] on 21 Nov 2011 at 8:23

Singing of Configuration

A method to sign configuration files to ensure that it has not been tampered 
with.  The ConfiguredPipeline would automatically verify the signature before 
using.

Original issue reported on code.google.com by [email protected] on 23 Nov 2011 at 10:03

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.