所以,我有一个小部件,我希望它每60秒更新一次。当小部件首次添加到主屏幕时,它会很好地运行其更新功能。除此之外,它应该启动一个AlarmManager,它将每60秒重新运行一次更新方法。这是它似乎实际上没有做的部分。这是我的代码:publicclassClockWidgetextendsAppWidgetProvider{publicstaticStringCLOCK_WIDGET_UPDATE="com.nickavv.cleanwidget.CLEANCLOCK_UPDATE";@OverridepublicvoidonUpdate(Contextcontext,AppWidget
我需要在AndroidAppWidget中确定运行时的屏幕密度。我已经设置了一个HDPI模拟器设备(avd)。如果设置一个常规的可执行项目,并将此代码插入到onCreate方法中:DisplayMetricsdm=getResources().getDisplayMetrics();Log.d("MyTag","screendensity"+dm.densityDpi);这会按预期输出“屏幕密度240”。但是,如果我设置一个AppWidget项目,并将此代码插入到onUpdate方法中:DisplayMetricsdm=context.getResources().getDisplay
基本上我想做的是通过一个Intent将一个自定义的parcelable对象传递给RemoteViewsService,从而传递给我的RemoteViewsFactory。出于某种原因,这根本行不通:S每当我尝试这样做时,小部件最终都会显示“问题加载小部件”文本。当我尝试同样的事情时,我没有将它传递给RemoteViewsService,而是将它传递给常规Activity,它完全按预期工作。我试图在网上找到我的答案,但我一直没有成功,因此我现在在这里发帖希望得到帮助。一段时间以来,我一直试图让它在我的主程序中运行。但我就是想不通。所以我试着把它归结起来,看看我是否在某个时候做错了什么。我
想要我的小部件中的一个按钮来触发小部件类上的APPWIDGET_UPDATEIntent以强制更新,但我没有将APPWIDGET_UPDATE视为Intent中的静态字段。这可能吗?如何做到这一点?Intentintent=newIntent(context,BaseWidgetProvider.class);intent.setAction({APPWIDGET_UPDATEINTENTHERE})PendingIntentpendingIntent=PendingIntent.getActivity(context,0,intent,0);views.setOnClickPendi
我的初始目标是将Google搜索小部件添加到Activity的线性布局中。我需要像它在Launcher中显示和工作一样包含它(这就是为什么我需要能够添加小部件)。我想将小部件添加到我的Activity中,而不必启动小部件选择器Activity。我尝试过了:1.直接指定一个整数id(我总是得到inflate错误)2。像这样获取id:ComponentNamecn=newComponentName(getBaseContext(),"com.android.quicksearchbox.SearchWidgetProvider");int[]ids=AppWidgetManager.get
我有一个简单的应用程序小部件,我想在Activity中(在同一个应用程序中)发生操作时更新它。在onUpdate()中,我立即更新小部件,效果很好。在我的Activity中,我在我的appwidget中调用了在onUpdate()中调用的相同静态更新方法来更新View。小部件未更新。我可以将代码直接跟踪到AppWidgetManager.updateAppWidget()方法中,这一切都很好,但是小部件不会更新。我能看到的唯一可能的区别是传递到我的静态更新方法的上下文对象是不同的,当它从Activity的上下文调用时与从appwidget的onUpdate()方法的上下文调用时。但是,
所以我有一个应用程序小部件,它可以很好地刷新,像发条一样定期将新位图加载到ImageView中。然后,在某个时候,它会静静地停止更新。我可以从日志和我的代码正在查询的服务器上的Activity中看出,该小部件实际上仍在继续定期触发(通过onReceive()捕获的广播,并将其作为预期。唯一没有发生的是小部件内容没有更新。所以,在小部件触发时执行的代码中,我正在创建一个新的RemoteViews并向其中添加内容,包括通过remoteViews.setImageViewBitmap(imageViewID,bmp)加载一个新的位图,然后最后调用appWidgetManager.update
我正在开发很多主屏幕小部件,目前我必须将它们安装在我的模拟器或手机上才能预览布局。是否可以在Eclipse中预览布局?当我在预览模式下打开布局的XML时,它会将其显示为Activity,因此缩放比例完全错误。 最佳答案 您可以使用jimu作为Eclipse的插件来实现它。Jimu是拖放式的Appcreationtool对于安卓。这是最合适的工具,可以让您实现想要获得的东西WYSIWYG,因为它将使您拥有livepreviews安卓layouts.您还可以选择将其与Eclipse一起使用,或使用AndroidStudio或yourch
这样的代码运行良好。IntentconfigIntent=newIntent(context,WidgetConfigActivity.class);configIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID,appWidgetId);PendingIntentpIntent=PendingIntent.getActivity(context,0,configIntent,PendingIntent.FLAG_UPDATE_CURRENT);remoteView.setOnClickPendingIntent(R.id.btn,p
我最难弄清楚如何以编程方式删除主屏幕AppWidget(即没有用户实际将其拖入垃圾箱)。例如,考虑一个可以有多个帐户的应用程序,每个帐户有任意数量的小部件-一旦删除一个帐户,小部件也应该被删除。我尝试按照http://www.netmite.com/android/mydroid/cupcake/frameworks/base/services/java/com/android/server/AppWidgetService.java中的一个模糊示例进行操作,但这似乎甚至不会触发OnDeleted,更不用说从主屏幕上删除AppWidget了。Intentintent=newIntent