今回も、個人的に欲しい機能で他では見つからないモノを作ってみたりします。有るモノを作る気はしないので、自然と自分用のニッチなアプリになります。
開発は
Eclipse 4.4.2 / Android SDK 4.0.3(API15) / java 1.8.0
Android Studio 4.1.3 / Android SDK 11(API30) / java build 1.8.0_242-release-1644-b01 64bit
を使用して作成。全部無料で揃うのは嬉しいことです。
StopSync
StopSyncPro
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
StopSyncは同期アカウント情報を取得するためにandroid.permission.GET_ACCOUNTSにアクセスします。この情報は、同期制御の目的で使用されます。設定画面の表示や設定の保存にのみ使用します。
StopSync accesses android.permission.GET_ACCOUNTS to obtain synchronization account information. This information is used for synchronization control purposes. It is used only for display on the setting screen and saving settings.
■機能
StopSyncはリアルタイム性の高いアプリ(例えばゲーム)を実行中の同期通信による遅延、通知表示による表示ブロックを回避します。
・設定したアプリの実行中だけ同期停止と通知破棄を行います
・設定外アプリの実行時は同期と通知を自動再開します
■設定
特になし。
■注意点
・停止中の同期通知が失われる事はありません
・破棄した通知は復元されません(有料版では破棄通知のログを表示可)
・一部のシステム同期、通知表示は停止できません
・アプリ利用時の初回のみ、利用者による権限アクセス許可が必要です
★技術的な話を少し、、、
通話着信も止めたかったができなかった。既存の着信停止アプリも2つ程試したが止まらない & 過去情報で実装してみたが MODIFY_PHONE_STATE権限不足でExceptionになる。MODIFY_PHONE_STATEはシステムでしか許可されないので諦め。
MediaVolCtl
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
MediaVolCtl はユーザーデータの収集・共有を行いません。
MediaVolCtl does not collect or share user data.
■機能
MediaVolCtlはメディア音量を自動ミュート(&解除)するウィジェットです。ヘッドホン以外で音楽を鳴らしたくない人向け。
・ウィジェット、通知のタップで無効にできます。
(2016/2/10)
経緯はメディア音量調整を参照下さい。
■設定
・特になし
■注意点
・ウィジェットを HOME に配置する必要があります。
・ウィジェット、通知のタップで無効になります。
・以下のシェルコマンドを投入する事でミュート切替可能です。
ミュート) am broadcast -a com.jp.ssipa.mediavolctl.ACTION_MUTE
ミュート解除)am broadcast -a com.jp.ssipa.mediavolctl.ACTION_MUTE_OFF
★技術的な話を少し、、、
AppWidgetProviderクラスには、ウィジェットをタップした時の処理は実装できない。AppWidgetProvider に実装できるのはウィジェット登録、削除時、一定時間毎の更新処理のみ。
なので、ウィジェット登録にServiceを呼出す処理を入れ、他の諸々の処理(タップ時の呼出処理も)はService上に実装する、、、という事を理解するのが難しかった。
Multi Launcher
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
Multilauncherは動作のために android.permission.BIND_ACCESSIBILITY_SERVICE、android.permission.SYSTEM_ALERT_WINDOW にアクセスします。この情報はプログラムの動作の為だけに使用し、外部へ持ち出す事はありません。
Multilauncher accesses android.permission.BIND_ACCESSIBILITY_SERVICE, android.permission.SYSTEM_ALERT_WINDOW for operation. This information is used only for the operation of the program and is not taken out.
■機能
完全なキーボードランチャー。
他のアプリを使用中でも、ハードキーから直接起動できます。HOME に戻る必要はありません。
今使用している HOMEアプリを変更する必要はありません。
1つのキーに登録するアプリの数に制限はありません。
以下の操作のいずれかによって、アプリケーションを選択、起動出来ます。
1)アルファベットまたは数字のハードキーの長押し→押下数。
2)HOMEのタップ数
3)HOME-> BACKのタップ数。
キーボードランチャーと言えば BlackBerry Launcher が定番ですが、全てのポイントで勝てたと思う!?(※BlackBerry Launcher はちゃんと使ってないので、ウソが有ったらすいません)
BlackBerry Launcher
Multi Launcher v5.0x
HOMEアプリ × HOMEはBBランチャーになる ○ 好きなHOMEアプリを使用できる
起動受付 × HOME画面でしか使えない ○ HOME画面以外でも使える
1キー登録数 △ 短押し、長押しの2つ ○ キー押下数で無制限
数字キー登録 × 出来ない ○ 出来る
起動キャンセル × 出来ない ○ 登録数+1回キー押下でキャンセル
■設定
以下、簡単な設定手順、キーボード付きデバイスなら「物理キー起動」だけで良いと思います。
物理キー起動を使う為の設定手順
HOMEキー起動を使う為の設定手順
■注意点
・HOMEでGoogleが起動してしまう →修飾キーを使用するか、アプリの設定でGoogleを無効にして下さい。
・起動画面の背景に他の AP画面が表示される →設定画面を開いて「戻る」でメインまで戻って閉じるか、再起動して下さい。
・ユーザ補助サービスが「起動中」にならない →再起動して下さい。
・起動画面表示が遅い事が有る →Android制限、MultiLauncherをHOMEアプリにする事で回避できます。
★技術的な話を少し、、、
V1.0から始まって V5.0でやっと、当初やりたかったことが出来た。(2020/2/24)
・V1.0 TerrainのPTT-Key(コンビニエンスキー)だけのマルチ打鍵起動
・V3.0 HOMEキー中心のマルチ打鍵起動を追加
・V4.0 HOMEキー→ハードキーのマルチ打鍵起動を追加
・V5.0 ハードキーからダイレクト起動を追加
Windows 1.0 から始まって、やっとWindows 95まで到達できた感じ、すいません古い人にしか通じない例えです。あきらめなくて良かった。
この経緯の為に、統一感の無い機能もそのまま詰め込まれています。
操作イメージは下の動画を参考に。
・物理キー起動のサンプル動画
・HOMEキー起動のサンプル動画(左下隅のキーに HOME を割り当て)
CosmoCtl
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
CosmoCtlは動作のために android.permission.READ_PHONE_STATE にアクセスします。この情報はプログラムの動作の為だけに使用し、外部へ持ち出す事はありません。
CosmoCtl accesses android.permission.READ_PHONE_STATE for operation. This information is used only for the operation of the program and is not taken out.
■機能
Cosmo Communicator 用に以下の機能を追加します。機能毎に有効/無効を選択可能。
・画面強制自動回転
・画面輝度調整幅の任意設定、シェイクによる切替
・キーボードバックライト自動点灯(要root)
・キャプチャ音の消音(要root、不完全)
・カバークローズ時、シェイクによる音量操作
・カバークローズ時、シェイクによる曲送り戻し操作(要root)
・カバークローズ時、着信でバイブレーションさせる
■設定
画面の説明にしたがって下さい。
■注意点
・Cosmo Communicator 専用です。
・キーボードバックライト自動点灯は照度センサーの値がゼロになると点灯します。
かなり明るい状態でも点灯する事がありますが、1.Cosmo のセンサーが安物 2.照度センサーが画面の裏に付いている の二つの理由です。改善はできません。
・キーボードバックライト自動点灯は Fn+SHIFT+B、N の入力を行います。文字入力中はこの入力の影響を受ける場合があります。
★技術的な話を少し、、、
自分以外のアプリの画面回転を制御できる事を勉強できました。
AtokSet
EcoCtl
BKlightCtl
KBlightCtl 公開終了
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
MediaVolCtl はユーザーデータの収集・共有を行いません。
MediaVolCtl does not collect or share user data.
■機能
AtokSet は ATOK の初期入力モードを画面毎にコントロールします。
ATOK は各アプリからの指定が無い限り、テキストエリアで日本語入力モードになります。
AtokSet は登録した画面の初期入力モードを「英数」にします。テキストエリアを選択した時のみ動作するので、その後入力中に、手動(ALT+SPACE)でモードを切替える事も可能です。
経緯はATOK 入力モード改善を参照下さい。
■設定
画面の説明にしたがって下さい。
■注意点
仕様補足)
以下を全て満たす環境でのみ動作します。
★技術的な話を少し、、、
色々な幸運が重なって、Atokの変換モードを取得する事ができました。Gboardでも動く様にしたいが変換モードを取得できないので諦め。
■機能
EcoCtlは定期的に通信と同期を自動停止、再開します。電力消費と通信量を削減する事ができます。
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
Ecoctlは同期アカウント情報を取得するためにandroid.permission.GET_ACCOUNTSにアクセスします。この情報は、同期制御の目的で使用されます。設定画面の表示や設定の保存にのみ使用します。
Ecoctl accesses android.permission.GET_ACCOUNTS to obtain synchronization account information. This information is used for synchronization control purposes. It is used only for display on the setting screen and saving settings.
■設定
■注意点
(2016/1/13)
・「杜のAndroid研究室」でご紹介頂きました、ありがとうございました。
・以下のシェルコマンドをroot権限で投入する事で「強制同期実行」の処理を起動可能です。(常駐不要)
am startservice -n com.jp.ssipa.ecoctl/.MyService --es SERVICE_STATUS setSyncForRequest
(2015/6/29)
経緯はバッテリー消費改善を参照下さい。
root は不要。
Terrain 専用という訳では無く、汎用的に使えます。
ただし Android5.0 以降の非root端末は OS の制限で通信の ON / OFF が出来ません。
セキュリティ・プライバシーポリシー(Security and privacy policy)※Googleからの依頼で報告
MediaVolCtl はユーザーデータの収集・共有を行いません。
MediaVolCtl does not collect or share user data.
■機能
画面/キーバックライトの明るさを自動調整します。
■設定
■注意点
(2016/1/13)
・以下のシェルコマンドをroot権限で投入する事で明るさの変更が可能です。(常駐不要)
画面 am startservice -n com.jp.ssipa.bklightctl/.MyService --es SERVICE_STATUS TEST_K --ei TESTVALUE {0-255}
キー am startservice -n com.jp.ssipa.bklightctl/.MyService --es SERVICE_STATUS TEST_S --ei TESTVALUE {0-255}
(2015/5/25)
経緯は画面の明るさ調整を参照下さい。
KBlightCtl の機能を拡張して、画面のバックライトも調整できるようにしました。
Terrain の画面は明るすぎるのでフィルター系の輝度調整アプリを使用していましたが、最大輝度でも暗いままだったり、キャプチャも暗くなったり、インストールボタンが押せなかったり、微妙に不便です。更に言うと、わざわざ画面を暗くしているのに、LED の消費電力はそのままな点もイマイチです。
このアプリに置き換えることで、問題を改善する事ができたので個人的には満足。
■機能
ハードウェアキーボードのバックライトの明るさを調整、または消灯します。
(2015/5/15)
初めて作った Android アプリ。当初はショボい機能だったけど、それでも動いた時は嬉しかった。
いろいろ機能追加して、上の BKlightCtl になっています。KBlightCtl は公開終了しました。