我有1个Android应用程序项目和1个小部件项目,它们都工作正常。现在,我想将小部件项目包含到Android应用程序项目中,以便在用户安装应用程序时,小部件也将被安装。我确实喜欢下面,但它不起作用。有帮助吗? 谢谢你!
在清单文件中:
<application>
............ (this is of android app project. below is of widget).......
<receiver android:name=".widget.PlayerWidgetActivity" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/playerwidgetprovider" />
</receiver>
<service android:name=".widget.PlayerWidgetActivity$UpdateService" />
<service android:name=".widget.PlayerWidgetActivity$ServiceBindUnbindService" />
</application>
EDIT
:我的应用程序非常大(.APK~10MB),当然它有很多活动,很多服务,很多广播接收器......所以构建需要很多时间。
我只用一个活动创建一个新的非常小的应用程序,并把像我放在上面的大应用程序上的小部件的代码。有用!我的天啊!为什么它适用于那个小应用程序而不是我的大应用程序:(
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".activity.ApplicationWithWidgetActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".widget.PlayerWidgetActivity"
android:icon="@drawable/ic_launcher"
android:label="@string/appwidget_name">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/playerwidgetprovider" />
</receiver>
<service android:name=".widget.PlayerWidgetActivity$UpdateService" />
<service android:name=".widget.PlayerWidgetActivity$ServiceBindUnbindService" />
</application>
答案 0 :(得分:2)
我遇到了同样的问题!
解决方案是 - 将应用程序安装到手机。
只需将应用程序移至手机即可看到您的小部件。
希望它对你有所帮助!