我正在编写一个Android音板,允许用户创建多个桌面小部件,每个声音一个.我正在使用一个活动让用户选择他想要创建小部件的声音.对于创建的每个小部件,我
key => "WIDGET_FILENAME_"+widgetId, value=> fileName
以"播放声音" 的形式存储共享首选项,我确实覆盖onRecieve了widgetProvider类上的方法.单击桌面窗口小部件时,它会触发此方法的广播,从intent获取窗口小部件ID,然后加载与窗口小部件关联的共享首选项:
int appWidgetId = intent.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID);
问题是:widgetId始终是相同的,没有点击任何小部件,导致播放相同的声音.
对此有何想法或指导?