1
/
5

AndroidのWidgetが使いやすくなったらしいです

みなさん、こんにちは。日本システム技研の笠井です。
梅雨で雨がうっとうしい季節、どのようにお過ごしでしょうか?

やはり雨が降っていると、外に出るのが億劫ですね…。
ちょうどいいので、家にいる間、ちょっと勉強してみるのはどうでしょうか?

ということで、今回は、AndroidのWidgetについて調べてみたので書きます。
(こんな記事でもいいのでしょうかね?)

なんでAndroid Widgetの話?

Android8.0(Oreo)で、新しいWidget Apiが追加されて、気になっていたので(今更)。
追加されたのは、アプリ内からウィジェット配置を呼べるというものです。
https://developers-jp.googleblog.com/2017/08/whats-new-for-shortcuts-and-widgets-in.html

今までは、機種やランチャーによって追加方法が異なっている上に、ユーザーが手動で置かないといけなかったため、分かりづらく、あまり使われていなかった感じがしています。
しかし、今回アプリから追加できるようになるので、みんなウィジェットを使うようになるのではないでしょうか?流行る、はずです!

あとは、私、課題とか忘れて、思い出しては、締め切りギリギリになっちゃう人なんで、スマホのホームに直近の締め切り日時をホーム画面に書いておきたいなと思った次第です。

↓イメージはこんな感じです。これをホーム画面に置きたいのです…。


Widgetを作ってみる。

ということでアプリを早速作ってみようと思ったのですが、今までwidgetを作ったことがない初心者なので、Widget作成のサンプルから作ってみることにしました。

① Android Studio を起動

② 新しいプロジェクトを作成。Widgetだけなので「Add No Activity」を選択


③ 「app」を右クリックして「New→Widget→App Widget」を選択


④Widgetの大きさを決めて「Finish」


⑤何もしていないですけど、これでサンプル作成終了です!あとは、起動設定です。
(Activityがない、ウィジェットだけのアプリなのでそのままだと動かせない)

・Edit Configurations → Launch を「Nothing」に変更



⑥ 実行!!
(これはウィジェットだけのサンプルアプリなので、ホーム画面から手動で設置してください。
なんというタイトル詐欺…。サンプルなので許してください。)

ついでに表示画像を変えてみました。

NewAppWidget.java

static void updateAppWidget(Context context, AppWidgetManager appWidgetManager,
                                int appWidgetId) {

        CharSequence widgetText = context.getString(R.string.appwidget_text);
        // Construct the RemoteViews object
        RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.new_app_widget);
        views.setImageViewResource(R.id.imageView, R.drawable.jsl_logo);

        // Instruct the widget manager to update the widget
        appWidgetManager.updateAppWidget(appWidgetId, views);
    }

おお…簡単…。

30分くらいで出来ました(実装10分 + ビルドエラー解消20分…)。
本題に入ってはないのですが、長くなりそうなので、今回はこの辺で終わります。
実装方法や詳しい説明は、また次回やりたいと思っています。

まとめ

Widgetって意外と簡単に実装できるんですね。初めて知りました。
アプリ連携はまだなので、(こっちが本題)そちらも勉強していきたいと思います。

もともと、会社貸与のMacBookにAndroid開発環境は作ってあったので、それほど時間かからずに出来ました。
弊社ではPCを持ち帰っても良いため、わざわざ自分のPCに環境作らなくて良いので楽でした(宣伝)!

手探りながらですが、頑張ります!他の記事も、見ていただけると幸いです。

株式会社日本システム技研's job postings
5 Likes
5 Likes

Weekly ranking

Show other rankings
Like Yuuka Kasai's Story
Let Yuuka Kasai's company know you're interested in their content