簡體   English   中英

使用用戶ID廣播的ADB

[英]adb broadcast with user ID

我正在嘗試向廣播接收器廣播adb命令。 這將是一個非常簡單的任務,但是braodcast-receiver具有:

android:exported =“ false”

在官方的android.developer網站上,它顯示:

如果為“ false”,則廣播接收器只能接收的消息是相同應用程序的組件或具有相同用戶ID的應用程序發送的消息。

因此,我正在嘗試將用戶ID添加到廣播中。 現在,我的方法是以下adb命令:

> adb shell am broadcast -a com.example.action -n com.android.package/.receiverName --user "User_ID"

我在Windows下的cmd中收到Error: Invalid int: "User_ID" 此應用是系統應用,更確切地說,它是默認的電話應用。 我以為Adb命令是默認情況下廣播的系統。 為此,我的問題是:是否可以通過廣播發送用戶ID或訪問未導出的操作? 清單的User_ID和上午廣播的User_ID之間可能存在差異。 提前致謝

PS:我沒有任何root用戶訪問權限,因為它可以在很多設備上正常工作,而無需植根所有人。 作為最終結果,我想接受傳入的視頻通話作為“音頻通話”。

有完全不同的用戶。

android網站中的第一個“用戶”是linux系統中的用戶ID,例如root,system,u0_a58(10058)。 每個APK都有其用戶ID,除非處於共享UID狀態。

am命令中的第二個“用戶”是代表使用此電話的人的用戶代表,例如管理員,來賓。
(您可以在Android Tab中添加來賓用戶,但是由於某些法律問題,您不能在Android手機中添加來賓用戶。)

答案 :無法從非root用戶的shell或第3個APK訪問未導出的組件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM