前提・実現したいこと
XamarinでKISOKアプリの作成行っており、ホームアプリ化を行いたく思っています。
ホームアプリ化(AddPersistentPreferredActivity)は実装ができたのですが、
ホームアプリ化解除の要望があり、ホームアプリ化解除を行えるようにコードを作成しました。
作成したコードではデバイスオーナー化した端末(Android9)で正常に動作することができました。
しかし、同じくデバイスオーナー化した端末(Android10)では、ホームアプリ化は正常に動作しているのですが、
ホームアプリ化の解除(ClearPackagePersistentPreferredActivities)が動作せず、ホームアプリ化の解除できません。
Xamarin.Androidの該当メソッドの公式ドキュメントとAndroid Developersの該当メソッドのドキュメントを確認しても
該当メソッドがAndroid10から動作しなくなるという情報は見つけることができませんでした。
Xamarin.AndroidではClearPackagePersistentPreferredActivitiesは利用できないのでしょうか?
当方初めての質問のためかなり情報が足りないとか、拙い質問にはなってしまっているかもしれませんが、
何卒ご教示いただけますと幸いです。
試したこと
Android9、10、11の端末を用意してそれぞれデバイスオーナー化を行い、
専用端末化して、実際にホームアプリ化とホームアプリ化解除を行ってみました。
行った結果、Android9のみホームアプリ化解除が動作していることが確認できました。
しかし、Android10とAndroid11端末では、ホームアプリ化は動作しているのですが、
ホームアプリ化の解除は出来ません。
デバックにて止めてみたりなどして確認しておりますが、エラーは発生しておりません。
デバイスオーナー化はUSBデバックで以下のようなコマンドをADBにて実行しています。
adb shell dpm set-device-owner アプリのpackagename/作成したDeviceAdminReceive
補足情報(FW/ツールのバージョンなど)
=== Visual Studio Community 2019 for Mac ===
Version 8.9.7 (build 8)
Xamarin.Mac 6.18.0.23 (d16-6 / 088c73638)
Package version: 612000125
=== Xamarin.Profiler ===
バージョン:1.6.15.68
=== Xamarin.Android ===
バージョン:11.2.2.1 (Visual Studio Community)
サポートされている Android バージョン:
8.0 (API レベル 26)
8.1 (API レベル 27)
SDK Tools のバージョン: 26.1.1
SDK プラットフォーム ツールのバージョン: 30.0.4
SDK ビルド ツールのバージョン: 30.0.2
=== Android SDK Manager ===
Version: 16.9.0.22
=== Xamarin.Forms ===
Version: 5.0.0.2244
■参考にさせていただいたサイト
・AndroidDevelopersのclearPackagePersistentPreferredActivitiesドキュメントページ
https://developer.android.com/reference/android/app/admin/DevicePolicyManager#clearPackagePersistentPreferredActivities
・Microsoft Xamarin.AndroidのClearPackagePersistentPreferredActivitiesドキュメントページ
https://docs.microsoft.com/en-us/dotnet/api/android.app.admin.devicepolicymanager.clearpackagepersistentpreferredactivities?view=xamarin-android-sdk-12&viewFallbackFrom=xamarin-android-sdk-9#Android_App_Admin_DevicePolicyManager_ClearPackagePersistentPreferredActivities_Android_Content_ComponentName_System_String_
ここにより詳細な情報を記載してください。
あなたの回答
tips
プレビュー