shibafu528/Yukari

Android 11 対応

Closed this issue · 5 comments

https://developer.android.com/about/versions/11?hl=ja

TODO

  • targetSdkVersion = 30
  • Scoped storage
    • 設定のインポート・エクスポートに影響 (/sdcard/Yukari4a)
    • アプリのアンインストールの影響を受けないためにこうしていたが、さてどうしたことか……
    • 一旦targetSdkVersion = 29でScoped storageをオプトアウトしてリリースすれば、移行の時間を稼げる
  • Toast APIの機能縮小
    • setGravityが機能しなくなる
  • 自分以外のパッケージの情報が隠されるようになった
    • 今まで通りに queryIntentActivities などでパッケージ情報をクエリしても、自分のパッケージ内のものしか返ってこなくなる。
    • twicca pluginのクエリと、shibafu.yukari.ACTION_LINK_ACCEL に影響。

ACTION_OPEN_DOCUMENT_TREE で読み書きするディレクトリを指定してもらうしかない?

Scoped storage対応は数年前のコミットでSAFをなるべく使うようにして対応済。
mruby pluginがファイルを開いている場合については知らないことにする。

AndroidManifest.xmlへのIntent query列挙完了。たぶんこれだけだと思う。

Toast.setGravity

以下の場所で使用されている。

  • 投稿画面のプラグインボタン長押し→プラグイン名の表示
  • クイック引用が有効化されている状態で引用ボタンを押した時→実行された引用方法の表示

どれも指の位置的にGravityが効いていないとほぼ見えないのだが、割と無くても困らなさそうなので放置する。