android应用程序小部件的编程功能

android应用程序小部件的编程功能,android,android-widget,Android,Android Widget,我有一个简单的手电筒应用程序,我想通过简单地点击这个小部件来实现灯光开关功能 现在,当我点击小部件时,我的程序启动了,这是可以的,但最好是直接从小部件访问我的应用程序的功能 我想现在appwidgetprowider刚刚开始我的活动: Intent Intent=新Intentcontext,MainActivity.class 在我的手电筒的主要活动中,我打开手机的led灯 切换闪光 方法 是否有人有想法,我如何从小部件启动此方法 谢谢你,并致以最良好的问候 打开手电筒不需要意图,因为它总是会

我有一个简单的手电筒应用程序,我想通过简单地点击这个小部件来实现灯光开关功能

现在,当我点击小部件时,我的程序启动了,这是可以的,但最好是直接从小部件访问我的应用程序的功能

我想现在appwidgetprowider刚刚开始我的活动:

Intent Intent=新Intentcontext,MainActivity.class

在我的手电筒的主要活动中,我打开手机的led灯

切换闪光

方法

是否有人有想法,我如何从小部件启动此方法


谢谢你,并致以最良好的问候

打开手电筒不需要意图,因为它总是会带你到活动或行动中的某个地方。最简单的方法是使switchOnTheFlash函数像这样保持静态-

public static void switchOnTheFlash() {
    // Your Function
}
现在你可以从任何活动调用这个函数,就像-

YourACtivity.switchOnTheFlash();
如果发生错误-

确保您在switchOnTheFlash中使用的所有变量也应该是静态的,否则您将得到错误,比如无法在静态函数中使用非静态变量,或者可能写得有点不同

另一个错误是,如果使用诸如getResources之类的函数,则可能会出现错误。要摆脱它,只需创建一个静态上下文mContext;全局并初始化它,如mContext=this;立即创建。然后简单地替换mContext.getResources。。。在您的函数中,任何地方都可以切换到Flash

干杯