Android - Объявление виджета в манифесте - PullRequest
4 голосов
/ 08 декабря 2011

У меня есть 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 ~ 10 МБ), конечно, оно имеет много активности, много служб, много вещанияприемники ..... так что требуется время, чтобы построить.Я создаю новое очень маленькое приложение с активным действием и помещаю код для виджета, как я поместил в большое приложение выше.Оно работает!О, МОЙ БОГ!Почему это работало в этом маленьком приложении, а не в моем большом приложении: (

<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>

1 Ответ

2 голосов
/ 02 июля 2012

У меня была такая же проблема!

Решение - УСТАНОВКА ПРИЛОЖЕНИЯ В ТЕЛЕФОН .

Просто перенесите приложение на телефон, и вы увидите свой виджет.

Надеюсь, это поможет вам!

Информация здесь: http://www.hrupin.com/2012/07/how-to-fix-android-homescreen-widget-installation-widget-as-part-of-android-application

...