2013-10-14 57 views
0

我在現有的android應用中添加了一個小部件。但小部件沒有顯示在設備上! 重新啓動,修改等沒有幫助。Android Widget沒有顯示?

這裏是我的代碼:

AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="thermometer.temperature" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="17" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 


     <receiver 
      android:name=".HelloWidget" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 
      </intent-filter> 

      <meta-data 
       android:name="android.appwidget.provider" 
       android:resource="@xml/hello_widget_provider" /> 
     </receiver> 

     <activity 
      android:name="thermometer.temperature.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.google.ads.AdActivity" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" /> 
    </application> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

</manifest> 

水庫 - > XML-> hello_widget_provider.xml

<?xml version="1.0" encoding="utf-8"?> 
<appwidget-provider xmlns:android="http://schmemas.android.com/apk/res/android" 
    android:initialLayout="@layout/main" 
    android:minHeight="72dip" 
    android:minWidth="146dip" 
    android:updatePeriodMillis="1000" /> 

水庫 - >佈局 - > main.xml中

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:layout_gravity="center" 
    android:background="@drawable/widget_bg_normal" 
    > 

    <TextView 
     android:id="@+id/widget_textview" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/widget_text" 
     android:layout_gravity="center_horizontal|center" 
     android:layout_marginTop="5dip" 
     android:padding="10dip" 
     android:textColor="@android:color/black" 
     /> 

    </LinearLayout> 

HelloWidget.java

package thermometer.temperature; 

import android.appwidget.AppWidgetProvider; 

public class HelloWidget extends AppWidgetProvider { 

} 

我必須在我的應用程序的主要活動添加somethink?或者我想念一些思想? 非常感謝任何提示!

回答

0

您的應用程序是否安裝在SD卡上? 當您的應用程序安裝在SD卡上或轉移到其上時,您無法看到小部件(可能是通過調整或骯髒的解決方案)。

+0

感謝您的回答!不 - 它不在SD卡上,我沒有在Manifest.xml中設置SD卡... – user2870829