我为我的应用小部件使用了设置活动。设置活动具有以下“创建”方法。 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (!isNetworkAvailable(this)) { Toast.makeText(this.getApplicationContext(),"You're offline. Turn Internet on before", Toast.LE…

2020年7月15日 0条评论 14点热度 阅读全文

我构建了一个应用程序小部件,该小部件仅按固定的时间间隔获取数据,因此它没有任何活动。甚至没有配置活动。是否可以使用以下代码在不使用活动的情况下注册广播接收器? context.registerReceiver(networkChangeReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION)); 基本上,我希望小部件在设备重新连接到网络后自动刷新,而不是等待下一次刷新。 我已经尝试过在AppWidgetProvider的onEnabled…

2020年2月25日 0条评论 20点热度 阅读全文

我有一个简单的小部件,按下该小部件可播放声音文件。现在,我在onRecieve方法中有以下代码: @Override public void onReceive(Context context, Intent intent) { super.onReceive(context, intent); int id = intent.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, -1); SharedPreferences prefs = context.getShar…

2019年12月20日 0条评论 27点热度 阅读全文

我有一个简单的小部件,其中包含一个简单的按钮,用于启动主活动。但是我有一个问题,当我从启动器中打开应用程序时,按下主屏幕按钮,然后从小部件中重新启动应用程序,活动将出现两次。我该如何解决? 谢谢 解决方案如下: 你必须用 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 添加 Intent.FLAG_ACTIVITY_CLEAR_TOP标志后 如果您已经打开了Activity,然后再次启动该Activity,它将重新启动您的Activity。它将不会启动另一个Acti…

2019年12月4日 0条评论 32点热度 阅读全文

我有一个可以下载时间表并保存它的应用程序,它还可以定期下载对该时间表的更改。我目前正在使用单例,但是从设计角度来看,这很丑陋。由于存在下载,我需要一个集中式系统来最大程度地减少网络使用量。 在当前情况下,每个需要从单例更新的类都首先获取该单例的实例,然后提供一个接口,该接口在需要更新时会调用某些方法。当前,单例在工作线程中处理所有下载。通常,我会使用从Activity调用的AsyncTask,但是因为我也必须将结果发送到小部件,所以看不到这项工作。 替代方法是使用服务。我将简单地从小部件和活动中绑定到它。在这种情况…

2019年8月21日 0条评论 40点热度 阅读全文

我正在构建一个小部件,该小部件显示一个文本视图,该文本视图可在配置类中作为edittext编辑。而且我只是实现了sharedpreferences,因此当用户第二次或第三次编辑窗口小部件时,已经输入的文本将出现在配置类的edittext字段中。 我猜这行得通。好吧,在我实现sharedpreferences之前,该小部件将在配置后进行更新。但是现在,我编辑文本,按Apply,但是小部件没有更新,然后我再次编辑小部件,并且小部件使用之前应用的文本进行更新。所以我想你可以说,这是一个更新延迟。我希望我很清楚,这有点难以…

2019年7月28日 0条评论 40点热度 阅读全文

我创建了一个WiFi小部件,为用户提供了轻松访问WiFi的功能。小部件功能运行正常。现在,我想向小部件显示动画。连接信号条时,请定期点亮一次并向上点亮,直到启用WiFi。为此,我创建了一个具有不同信号电平的图像阵列。 在连接时,我正在调用方法startAnimation。 public void StartAnimation() { System.out.println("start"); frame = 0; animationFlag = true; if(!handler.hasMessages(0)) ha…

2019年3月30日 0条评论 18点热度 阅读全文