以前安さにつられて楽天モバイルを契約して使いもしないRAKUTEN HANDを手に入れました。(過去記事はこちらから)
そのスマホを今カーナビに使ってます。
ですが、、、車に乗るたびにナビアプリ起動してBluetooth繋げて音楽アプリ流してって作業が
あ~~~糞めんどくせぇなぁ!!!!!
とイラついていたので、androidの自動化アプリ「Tasker」で自動化しました。
その内容を記事にしましたので、何かの参考になれば幸いです。
この記事を読むとわかること、わからないこと
前提は非ルート化です。やりたいことは以下です。
・エンジン始動でモバイルデータ通信、GPS、BluetoothをONしてカーナビ起動。
・Bluetoothがカーオーディオを繋がったらamazon prime musicを自動再生
・エンジンOFFでモバイルデータ通信、GPS、BluetoothをOFFしてアプリを落とす。電池の消耗を減らすために、バッテリーセーブモードに切り替わる。
・電池切れで電源がOFFした場合はエンジン始動(USB充電開始)でスマホが自動起動
できたことは以下です。
できていないことは以下です。
以下記事では「できたこと」の具体的なやり方を解説します。
準備するもの
必要なものは以下になります。
スマホ
アプリ:tasker(380円)、ナビアプリ(yahooナビ)、音楽アプリ(amazon music)
PC
android studio
PCとandroid sudioはtaskerにセキュリティ書き込み権限を与えるのに使用します。(ルート化ではありません。)
[tasker前の事前準備]WRITE_SECURE_SETTINGS権限を付与する
「WRITE_SECURE_SETTINGS」がないとGPSがON/OFF出来ません。↓こんな感じで。
なので権限を付与します。権限の付与はPCでやります。
まずPCにandroid stadioをインストールします。
次にコマンドプロンプトを起動します。(windows スタートでcmdと打ちましょう。)
adbコマンドが使える状態にまでもっていきましょう。
私はadbコマンドが使えなくて困りました。以下記事を参考に解決しました。
つづいてandroidスマホをデバックモードでPCに接続します。デバックモードはスマホをデベロッパーモードにしてデバックモードONにします。細かいやり方はググりましょう。腐るほど記事が出てきます。
私はUSB接続したandroidスマホがPCで認識できなくて困りましたが、ドライバーをインストールしたら解決しました。
接続したらコマンドプロンプトに「adb devices」と打って、デバイスが確認出来たら、
「adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_SECURE_SETTINGS」と打ちます。
はい。これで終わりです。
エンジン始動でGPS、BluetoothがONしてカーナビ起動。(バッテリーセーブモード解除もする。)
スマホはUSB充電コードつけっぱなしで使うので、エンジン始動と同時にUSB充電が開始されます。
なのでUSB充電開始をトリガーとして各操作をするようにします。
まずプロファイルを作成します。
①右下の「+」をタップし新しいプロファイルを作成します。
状態をタップします。
②電源をタップ。
③もっかい電源をタップ。
④なんでもをタップ。
⑤USB充電をタップ。
これでUSB充電開始を検出することが出来るようになりました。
続いて各タスクを作成します。
GPSをONする。
①タスク画面の「+」から新しいタスクを作成します。
適当に名前を入れて「レ」をタップします。
②場所をタップ。
③位置情報モードをタップ。
④端末のみをタップしました。高精度でもいいかと思います。
こんな感じになりました。
はい。これで終わりです。続いてBLUETOOTHをONするアクションを加えます。
BLUETOOTHをONする。
①タスク編集画面で「+」をタップしてアクションを追加します。
②ネットをタップ。
③Bluetoothをタップ。
④オン
こんな感じですね。
カーナビアプリを起動する。
①「+」をタップしてアクションを追加。アプリをタップ。
②アプリ一覧からカーナビアプリを選択します。
こんな感じ。
バッテリーセーブ状態を解除する。
①「+」をタップしてアクションを追加。システムをタップ。
②電力モードをタップ。
③通常を選択。
動作確認
最初に作ったプロファイルとタスクを紐づけて、充電ケーブルを抜き差しして確認してみましょう。
Bluetoothがカーオーディオを繋がったらamazon prime musicを自動再生
まずBluetoothが繋がったときをトリガーとするプロファイルを作成します。
プロファイルの作成
①右下の「+」をタップし新しいプロファイルを作成します。
状態->ネットをタップします。
②接続中のBluetoothをタップ。
③住所(アドレス)を記入します。(カーオーディオに繋げたときのアドレスをメモっておきましょう。)名前だと安定して動作しなかったです。
amazon prime musicアプリを起動する。
カーナビアプリを起動するのと同様の手順ですので、省略します。
10秒待つ。
アプリの起動時間を待ったほうがいいので、10秒待ちます。(時間は適当です。)
①アクション追加からタスクをタップ。
②待機をタップ。
③10秒にします。
音量を調整する。
ちょうどいい音量に設定しましょう。
①アクション追加から音声をタップ
②メディア音量をタップ
③10に設定。
音楽を再生
音声を再生します。
①アクション追加からメディアをタップ
②メディア操作をタップ
③再生[疑似的にのみ]をタップ
エンジンOFFでGPS、BluetoothをOFFして電池の消耗を減らすために、バッテリーセーバーモードに切り替わる。
エンジン始動でGPS、BluetoothがONしてカーナビ起動。(バッテリーセーブモード解除もする。)
の逆操作なので、省略します。
「できないこと」がなぜできないか?
エンジン始動でモバイルデータ通信をONする。エンジンOFFでモバイルデータ通信をOFFする。
「root権限/write secure setting権限がいる。」と怒られます。いやいやwrite secure settingあげてるだろボケ。と思ったのですが、何か上手くいかなかったです。
エンジンOFFでアプリを落とす。
これもね怒られます。「アプリの強制終了:Kill App」を使おうとするとADB Wifiがどうのこうの言われます。調べるのめんどくなってやめました。
電池切れで電源がOFFした場合はエンジン始動(USB充電開始)でスマホが自動起動
うーん。ハードウェア的な話になりますよね。やりたいけどようわからんからやめました。
長期放置して電池ぎれしたときがめんどくさいんですね。。。
終わり!!