以前の記事に書いたとおり、車載AndroidのXTRONS TB103APにおいては、TaskerやMacrodroidの自動操作系アプリは残念ながらシャットダウン時にサービスごとKillされ、スリープから復帰するイベントを拾うことが出来ません。※起動時にTaskerが動作していないことが多い。でも、タイミングによっては起動したりする。…つまり不安定で使い物にならない(^_^;
ACC_ONで中途半端な状態で立ち上がるのを何とかしたい…(というか起動時自動実行させたい)
解消する方法をコメントで教えていただきました!
Xda Px5のスレにもあったのですが、xposed edge の起動終了(boot complete)で任意のアプリやショートカットを登録・起動できます。複雑なプロセスもその他のmulti process で設定できたと思います(taskerなど)。
「Xposed edge を使え…」と。
Xposed edge pro – Google Play の Android アプリ
実は、Taskerとかで挑戦してるときにpro購入済みだったのにも関わらず、「どうせ無理だな…」と諦めて使っていなかったのです(^_^;
ではさっそく…。インストール→Xposedで有効化→再起動して準備完了。
Xposed edgeを起動します
Xposed edgeには様々な機能がありますが、ここでは一連の流れを multi-action に登録し、more trigger という機能で、ACC ON時に発生するイベントをフックしてそれを起動させます。早速やってみましょう!
まずマルチアクションを登録
ACC ON時に作動させたい一連の流れを登録
Add をタップするとアクションを追加していくことができます。私は、SetCPU→GPSロガー→オービス→DropSync→Overlay Clock Lite を自動起動させるよう登録しました。間にそれぞれ Delay:**** を入れています。これはアプリの起動待ちのウェイトです。これがないと、瞬間的に一気に起動させてしまうため、うまく動作しません。
※先頭に登録したworks = 1 、末尾に登録した works = 0の意味は、後でご紹介します。
登録が済んだら、右上のチェックマークをタップし、保存します。
More triggers で、発動のタイミングを設定
マルチアクションを保存しただけでは発動しませんので、どのタイミングで始動させるかを設定します。
Screen Turned on でフックさせる
More triggers 内で、様々なトリガーが選択できます。いろいろ試した結果、ScreenTurnedOnでフックすれば、コールドブート時も、ACCON時もほぼ確実に作動します。
では動作を試してみましょう…(・∀・)
※また露出がむちゃくちゃで見にくいですが流れだけはわかるかと…。
SetCPU → GPS Logger → オービス → DropSync → OverlayClockLite → その画面のONボタンを2回タップ
が、順番に起動していることが確認出来ます…(・∀・)!!やりました、これでPumpkinちゃんのときに近い理想の動作をさせることができます…(>_<)
感無量でございますw
同時にバッチが走ってしまうことがあるので、ひと工夫
喜んでいたのもつかの間、何回か試してニヤニヤしていると、ACCオンにするタイミングによって、ScreenOnイベントが複数回発生しそれが全てフックされ、同時にバッチが並行して走ってしまう症状が見受けられました。そのため、ちょっと工夫します。
Xposed edgeでは独自に変数を持てるので、先ほど登録したマルチアクションを、ScreenOn時に直接実行するのではなく、条件判定で実行させるよう工夫します。
先ほど登録したアクションの先頭と末尾にworks = 1 / works = 0 を仕込みました。それがここで効いてきます。works はバッチが実行中か否かを知るためのフラグとして使います。
上記の画像の設定は、Screen onイベント発生時に、works == 1 ならアクションが走っている最中なので何もせず終了。それ以外の状態なら既定のアクションを実行する。原始的かつ単純な方法ですが、とりあえずこれで、何度イベントが発生しても、実行中のアクションは1つに限定することが出来ていると思います。
まあ、複数走ったとしても画面遷移が気持ち悪いぐらいで特に支障は無いのですが、SEの端くれとしてのこだわりですw
当初の理想は達成できつつあります…!
起動後、意識せずにGPSログを開始したかっただけだったのですが、なかなか遠回りでした。この設定で、とりあえず3日かけて東京往復に行ってきましたが…。
一度も欠けることなくGPSログが撮れていました(・∀・)
GPSログは5分ごとにDropsyncで自動的にPCに転送されるように設定していますので、ネットにさえつながっていれば、随時転送されてきます。うーん、近未来
そんなこんなで、カスタムROMを入れれば、さらに楽しみ広がるAndroid車載ナビ。国内でも普通に入手できるようになってきました。
興味のある方は、是非手に入れてみましょう( ´▽`)
NOW ON PX6!地デジ付 https://www.amazon.co.jp/dp/
現在動画をmxプレイヤーで見ているのですが電源を入れ直す(エンジン始動)時にMXは立ち上がるのですがファイル選択の画面になってしまいます。
Xposed edge(pro)を使用すれば解決するのでしょうか?
かず さんこんばんは。
ご質問の件ですが、こちらに記事として実験して、動画撮ってみました。
取り急ぎの実験ですので100%確実…とは言えませんが、XposedEdgeだけでは不十分かも知れません。工夫なさってください。
XposedEdgeから、他の制御アプリを呼び出して…というのもアリかもしれません(そこまでやる必要があるのかどうかはさておき(^_^;)。
kyosukeさん
PumpkinのRQ0278をroot化して使い始め、ブログを参考に色々と試しております。
さて、XTRONSのナビにxposedはどのようにインストールされましたでしょうか。
普通にxposedインストーラアプリからインストールされたのか、
boot loader(?)からZIPをインストールされたのか、はたまた他の方法で導入されましたでしょうか?
私も、終了時にアプリがすべてKILLされ、GPSロガーが毎回自動起動しないので残念な思いをしています。。。
もしよろしければお教えください。
ねこりんさん、こんにちは!
コメントありがとうございます!お返事が遅くなってしまって申し訳ありません。
ゼロからXposedを入れるのは結構めんどくさそうですね…
私の場合は、カスタムROMを導入すると自動的にXposedが組み込まれている状態だったので、それを使っています。
ので、新規別途インストールの方法はわかりません…。
RQ0278 はPX3 の2GBの機械でしょうかねPX3にもカスタムROMがあると思いますので、
自己責任でお試しされてみてはいかがでしょう?
Android5 でしたら、Tasker ダメでしたか?
kyosukeさん
ありがとうございます!
カスタムROM導入されたので入っていたんですね。。
RQ0278はIntel Sofia3gタイプでPX3とはモデルが違うのかな、
と思っています。
MalayskさんのカスタムROMなどは探しても無い模様で。。。
一応XDAの情報よりrootは取ることができたので、xposedを入れられれば、
と思っているのですが。。。
ご参考→https://forum.xda-developers.com/android-auto/mtcd-discussion-questions-development/mtcd-intel-sofia-units-wifi-3g-t3533154
Taskerも入れてみたのですが、KILLされてしまうので次回起動時に立ち上がってこないんみたいです。。
もうちょっとうまいやり方がないか、探ってみようと思います。
TB103APを使ってMXを既読させていますが毎回音量がリセットされてしまっています
Xposed edgeは使っているのですが音量ボタンは登録出来ないようです
なにかいい方法は無いものでしょうか?
かずとしさん、こんにちは、コメントを3ヶ月以上放置してしまいました・・・ごめんなさいm(__)m
もう解決され(or他の方法を使われて)ているかもしれませんが、
起動時音量に関しては「工場設定」の「Boot Default Volume」項目で変更が出来ます(最後の音量を記憶するわけではありませんが…)。
コールドスタートのときだけしか効かないかもしれませんが、一度確認してみて下さい。