按照Android開發者文檔:添加安全持久廣播
沒有規定提供,以確保粘性廣播用戶定義的權限。
我已經使用sendStickyBroadcastAsUser這需要一個應用程序具有兩件事情(按照上面的鏈接)嘗試: 1.讓許可「INTERACT_ACROSS_USERS」和 2.應用程序必須是系統應用程序。
不過我曾嘗試與準則實施,但仍然可以接收廣播粘未經上述兩個提到以前的情況(即與沒有所需的權限普通的應用程序),它依然保持着我的廣播不安全。
以下是我的代碼片段:
// send sticky broadcast.
Intent intent = new Intent("my_action");
intent.putExtra("my_extra", state);
if (DebugMode.DEBUG) {
Log.d(TAG, "Sending Broadcast " + intent.toUri(0));
}
Parcel in = Parcel.obtain();
context.sendStickyBroadcastAsUser(intent, new UserHandle(in));
in.recycle();
,因爲它需要留在系統的其他應用程序,以從中讀取我的應用程序的狀態,我不能用正常播放。
有沒有一種辦法,以確保我粘廣播?
得到你所說的。但我試圖在沒有許可的情況下從非系統應用發送廣播。但它仍然會發送它。因此需要弄清楚實施是否正確? –
對不起,我沒有關注你在說什麼。通過粘性廣播,沒有可以應用的許可。自定義Intents被髮送爲粘性也沒有限制。有系統定義的粘性廣播(例如'Intent.ACTION_BOOT_COMPLETED'),但系統不限制第三方應用發送自定義粘性廣播。 –