0

我需要启动一个Activity以防我的Android application.

这个功能应该适用于我的整个app活动和所有活动。

现在确定如何为其提供良好的架构,因为检测抖动和启动 Activity 需要上下文实例。

我不想在ShakeListener每次更改activity.

你会建议什么?

谢谢。

4

1 回答 1

1

当然必须保留一些监视传感器数据的东西,例如 后台服务。您的服务必须持续监控传感器事件,将其通过噪声过滤器,检测震动并发送广播

另一方面,Activity 可以实现匹配的BroadcastReciever

如果您不想为活动添加广播接收器,那么您可以在init()库代码中注册感兴趣的活动:

public void init(Context context){ 
    SensorTester st = new SensorTester(context);

    st.registerActivity(MainActivity.class);
    st.registerActivity(OtherActivity.class);
}

init()并使用您在代码中收到的上下文从库服务启动它们:

for(Class c : registeredClasses){
     context.startActivity(new Intent(this,c));
}

您想init()在目标应用程序中放置代码的位置是您的选择。

于 2013-05-21T12:29:08.120 回答