サイト移転のお知らせ:http://techbooster.org/に移転しました

LiveWallpaper(2)設定を作成する

7月 11, 2011   //   by UpDown-G   //   Android, アプリケーション  //  No Comments

前回、LiveWallpaper(1)基礎編では、LiveWallpaperの作成方法を紹介しました。

本エントリでは、LiveWallpaperを壁紙へ設定する際にユーザーに入力操作を行わせることができる設定画面の作成方法を紹介します。

前回LiveWallpaper(1)基礎編のエントリを踏まえ解説していきますので、一度目を通しておくことをお勧めします。

■設定項目を作成する

LiveWallpaperを作成する際に、AndroidManifestファイルへ入力する必要があるものは以下でした。
 ・uses-feature要素に android:name=”android.software.live_wallpaper”
 ・serviceとして WallpaperService を登録
 ・android:permission=”android.permission.BIND_WALLPAPER”
 ・meta-data タグに 設定用のリソースを指定する

上記の4つのうち、meta-dataタグに指定した設定用のリソースファイルは、前回は空のXMLファイルを指定していました。

今回は、以下XMLファイルのように指定することで、図のようにiconの設定と説明文の設定を行うことができます。

res_sample.xml

<?xml version="1.0" encoding="utf-8"?>
<wallpaper xmlns:android="http://schemas.android.com/apk/res/android"
  android:thumbnail="@drawable/tbicon"
  android:description="@string/explain_text"
  android:settingsActivity="org.jp.techbooster.sample.tcblivewallpaper2.SettingSample" />

res_sample.xmlファイルの5行目で指定しているActivityは以下の内容になります。
PreferenceActivityにて、preference設定用のXMLファイルをロードしているのみとなります。
設定画面を簡単に作るで紹介した内容をそのまま利用していますので、本エントリではPreferenceActivityの使用方法については割愛します。

SettingSample.java

public class SettingSample extends PreferenceActivity  {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        addPreferencesFromResource(R.xml.prefsetting);
    
    }

Activityの追加を行う為、Manifestファイルへの登録を忘れないようにしましょう。
下記ソースコード4行目の通り、android:exported要素(アクティビティを他のアプリケーションから起動可能にするか否か)をtureに指定しない場合下記エラーにあたります。

Permission Denial: starting Intent { cmp=org.jp.techbooster.sample.tcblivewallpaper2/ ¥
.SettingSample (has extras) } from ProcessRecord{4096ca705107:com.android.wallpaper.livepicker/10028}

AndroidManifest.xml

	<application android:icon="@drawable/icon" android:label="@string/app_name">
	<activity
            android:name=".SettingSample"
            android:exported="true">
	</activity>
	</application>

関連する記事:

Sponsored Link

Comments are closed.

技術書新刊 発売中

アンドロイドアカデミアには、CIやテスト、互換検証など実務に生きるノウハウをあつめています

技術書新刊 発売中

Android Next!はAndroid 7.0に対応したはじめての技術書です!


The Web Explorer 2はCSSの中央寄せやWebAudioなど未来を読み解く一冊です


Revised TypeScript in DefinitelylandはTypeScript 2.0(β)に対応した解説書です。インストールから型定義まで幅広くサポートしています


技術書をかこう!はエンジニアらしい執筆環境を構築、HowTo本です