KLWP・背景画像を本体フォルダからランダムに変更させる

2021/01/17

klwp
KLWPでは一定時間ごとに背景画像をランダムに変更させることができますが、KLWPにある数式はSDカード内の画像を表示させるひとつの例であるため、数式をそのまま適用しただけでは表示されません。
問題なく表示させるには画像が保存されている場所(フォルダ)がどこなのかを知り、そこまでのパスを数式に記述する必要があります。

ランダム背景の数式について

まずは数式について説明しておきましょう。
背景画像をフォルダからランダムに表示させるには、【 Timer Utilities 】から次の数式を使います。
$tu(rndimg,15,"/sdcard/pictures")$ 
「15」の数値は「分」に相当した更新間隔の時間です。この場合は「15分毎に」となるので、1時間なら「60」、1日なら「1440」または「60*24」とします。

後に続く「" "」内は画像が保存されている場所へのパス。この場合は「SDカードのpictures」となっていますが、パスは画像の保存先により異なるので調べる必要があります。

画像フォルダへのパス

パスを調べるにはGoogleフォトなどのアルバム系アプリで、画像の「詳細」で保存先を確認すると簡単にわかります。

例)/storage/emulated/0/Download/12345.jpg

このような【 /storage/ 】から始まるのがここで必要になるパスです。Android本体に保存された画像は、「/storage/emulated/0/」の後が保存されているフォルダ名です。フォルダが階層になっている場合はこの後に2つ3つと続きます。
また、最後の「/12345.jpg」の部分は画像の名前と拡張子。画像が保存されている場所までわかればいいので、数式にこの部分は必要ありません。画像の名前部分以外がパスと覚えておくといいでしょう。

上の例で数式にすると次のようになります。
$tu(rndimg,15,"/storage/emulated/0/Download")$ 
15分毎に「Download」フォルダからランダムで画像を表示、という意味の数式です。

数式を記述する場所

背景の画像を選択する「ビットマップ」にチェックを入れ、数式エディタを有効にして記述します。
また、試しに時間を15秒などと短くし、きちんと動作するか確認するといいかもしれません。15秒の場合は時間を「0.25」とします。

意図しない画像が表示されることも

画像が保存されているフォルダ内からランダムで画像が選択されるため、同フォルダ内に余計な画像があるとそれも表示されることになります。
意図しない画像が表示されるのを防ぐには、ファイルマネージャーなどを使用して専用のフォルダを作成し、そこに表示させたい画像をコピペまたは移動させましょう。あとは専用フォルダまでのパスを記述すれば問題ありません。