Android 8.0 Oreo「Picture in Picture」を実際に確認する

YouTube で使うには YouTube Red のサブスクリプションが必要.

YouTube's Picture-in-Picture mode in Oreo is only available to paying Red customers in five countries, and that's a problem

よって, 日本国内 YouTube では, 現在, アプリ・ブラウザ共に使えない模様.

Chrome上でのYouTube以外の動画 や GoogleMap のナビゲーションモード では国内でも使える.

設定からインストールしている*実装上は*対応しているアプリを把握できる.

[設定]

[アプリと通知]

[特別なアプリアクセス]

[PinP]

動画を表示するアプリを中心に対応が進んでいくのでしょうね.

WhatsApp update includes picture-in-picture calls for Android 8.0 Oreo | Tech | Life & Style | Express.co.uk


開発者が見ておくべき /r/androiddev にみるAndroid環境の王道

それなりに王道の本筋ではないかと思えますがどう思います?

/r/androiddev survey time! : androiddev

以下, 箇条書きに.

端末は Google Nexus シリーズ.

Root化やROMカスタマイズはしない.

Linux はラップトップで Ubuntu (Unity).

Windows はデスクトップで10.

Mac はラップトップで 10.12 Sierra.

主携帯は Android, タブレットは持っていない.

開発OS は OSX Intl Core i7, SSD, メモリ16G.

アプリにタブレット向けデザインは作成しない.

minSdkVersion は 16 (4.1.x).

アーキテクチャは MVP.

DIライブラリは Dagger 2.

Rx ライブラリは RxAndroid + RxJava2.

代替のフレームワークは Cordova.

データのシリアライズは Gson.

データ永続化は Realm.

ネットワーク処理は Retrofit.

画像読込みは Picasso.

Viewバインドは ButterKnife.

思ったより RxJava2 の躍進が早いなあと思いました.


LINEbot でオウム返し 2017 PHP版

やり方調べるのになぜか時間がかかる.

なんだかつらたん.

ただ, オウム返ししたいだけなのに!

しくみ

LINEサーバを介して自分のサーバ内のスクリプトで受け取ります.

スクリプト作成の前に LINE管理画面で,

- アクセストークンをもらう
- サーバー内スクリプトまでのURLを教えておく

スクリプト

LINE側 API はわかりやすい仕様で作られています.


<?php

$access_token = /* your access token */;

$url = 'https://api.line.me/v2/bot/message/reply';

// receive json data from line webhook
$raw = file_get_contents('php://input');
$receive = json_decode($raw, true);

// parse received events
$event = $receive['events'][0];
$reply_token  = $event['replyToken'];
$message_text = $event['message']['text'];


// build request headers
$headers = array('Content-Type: application/json',
                 'Authorization: Bearer ' . $access_token);

// build request body
$message = array('type' => 'text',
                 'text' => $message_text);

$body = json_encode(array('replyToken' => $reply_token,
                          'messages'   => array($message)));


// post json with curl
$options = array(CURLOPT_URL            => $url,
                 CURLOPT_CUSTOMREQUEST  => 'POST',
                 CURLOPT_RETURNTRANSFER => true,
                 CURLOPT_HTTPHEADER     => $headers,
                 CURLOPT_POSTFIELDS     => $body);

$curl = curl_init();
curl_setopt_array($curl, $options);
curl_exec($curl);
curl_close($curl);

結果

どんだけつらたんなのか!


新しくなった Gradle Tips and Recipes : 各ソースセットの配置の確認

新しくなってます, Gradle Tips and Recipes .

Gradle Tips and Recipes | Android Studio

Gradle が利用するディレクトリ

それぞれ指定できるのはなんとなく知っていたが.


android {
  ...
  sourceSets {
    main {
      java.srcDirs = ['other/java']
    ....

これらの記述無し無指定のデフォルトの場合はどのディレクトリが利用対象になっているのか.

ドキュメントやツールスクリプトなど,

Git に登録して管理はしたいが, アプリ自体に影響ない位置はどこなのか??

と思っていましたが.

Configure Build Variants | Android Studio

右上 [Gradle] タブから以下ダブルクリックで実行.

MyApplication > Tasks > android > sourceSets

Gradle が認識している対象ディレクトリ群が Gradle Console に出力される.


------------------------------------------------------------
Project :app
------------------------------------------------------------

...

debug
----
Compile configuration: compile
build.gradle name: android.sourceSets.debug
Java sources: [app/src/debug/java]
Manifest file: app/src/debug/AndroidManifest.xml
Android resources: [app/src/debug/res]
Assets: [app/src/debug/assets]
AIDL sources: [app/src/debug/aidl]
RenderScript sources: [app/src/debug/rs]
JNI sources: [app/src/debug/jni]
JNI libraries: [app/src/debug/jniLibs]
Java-style resources: [app/src/debug/resources]

これで, AndroidStudio でファイルを操作しながらの Git 管理しても安心です.

他にもあれこれ小技がのっていますよ, このレシピ.


Android 6.x (Marshmallow) ホーム長押し (アシスト機能) アプリの設定

ホームボタンを長押しするとアプリが起動するようになったりしています.

ここから起動できるアプリを変更してみます.

OSバージョンで異なるようですが, 今回は, Android OS 6.x でやってみます.

[設定] - [アプリ] とタップしていきます.

ここで, 右上の「歯車」ボタンをタップします.

そして「既定のアプリ」をタップします.

一番上の「アシストと音声入力」をタップ.

さらに, 一番上の「アシストアプリ」の表示されてる文字の部分(歯車ではない) を押します.

この画面では現在「Launcher3」というアプリがセットされていますので. 歯車を押すとそのアプリの設定画面が表示されます. ホームボタン長押しから利用するアプリ自体を変更する場合は文字の部分をタップします.

インストールしているアプリのうち, アシスト機能に対応しているアプリの一覧が表示されますので, 利用したいアプリをタップしてセットします.

例えば「なし」を選択すると, ホームボタンを長押ししたときの反応はなくなります.

正直, 最近のOSまわりの設定は複雑すぎじゃない?

ホームボタン長押しアプリの変更や削除する方法

【3年連続3回目】ホームボタン長押し から起動されるアプリの変更は「アシス」で