2011年12月9日 星期五

[Android] Caused by: android.content.ActivityNotFoundException

雖然使用 eclipse ui 來建立 androidMainifest.xml 新的 activity 時還是會出現以下錯誤訊息

Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class have you declared this activity in your AndroidManifest.xml?

解決方法是手動修改 AndroidManiftest.xml 內的 android:name 輸入完整的 package namespace 含 class


以動態桌布為例

<service
android:name="your.package.namespace.TestLiveWallpaper"
</service>
<activity
android:name="your.package.namespace.TestLiveWallpaper"
</activity>

動態桌布的 xml 內的 android:settingActivity 也需要改成這樣

<wallpaper xmlns:android="http://schemas.android.com/apk/res/android" android:settingsActivity="your.package.namespace.TestLiveWallpaper"
/>

2011年12月5日 星期一

[Android] 取得螢幕解析度

繼承 activity 時

Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();


不是 activity 時

Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();