ContentResolver getCurrentSyncs(): SyncInfo 账户名被删
ContentResolver getCurrentSyncs(): SyncInfo account name is censored
当我调用 ContentResolver.getCurrentSyncs() 并打印 SyncInfo 对象的帐户名称时,我得到的是星号 (*****) 而不是字符。
是只在日志上被删,还是字符串本身不可读?
知道我如何具体比较它吗? (等于)
String original = "myName";
for (SyncInfo info : ContentResolver.getCurrentSyncs()) {
Log.i(info.account.name); // prints ******
boolean result = original.equals(info.account.name); // always false?
}
授予的权限:
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_SYNC_STATS" />
在 Android 上
编辑:
直接从 AccountManager 访问帐户名称是可读的。 (getAccounts())
知道了。
没有找到任何文档,但在 SyncInfo.java 的 source code 的第 32 行:
/**
* Used when the caller receiving this object doesn't have permission to access the accounts
* on device.
* @See Manifest.permission.GET_ACCOUNTS
*/
private static final Account REDACTED_ACCOUNT = new Account("*****", "*****");
我仔细检查了权限,但没有发现问题,所以我断开了 phone 的连接,得到 icetea 并观看了 netflix。这解决了问题。
编辑:我曾经更改过帐户类型定义,但这并不能解释为什么 getCurrentSyncs() 被审查而 getAccounts() 没有。
Edit2:在另一个 phone 上遇到问题:禁用并重新启用我的应用程序所需的 CONTACTS 权限后,GET_ACCOUNTS 被真正授予,问题消失了。
当我调用 ContentResolver.getCurrentSyncs() 并打印 SyncInfo 对象的帐户名称时,我得到的是星号 (*****) 而不是字符。
是只在日志上被删,还是字符串本身不可读? 知道我如何具体比较它吗? (等于)
String original = "myName";
for (SyncInfo info : ContentResolver.getCurrentSyncs()) {
Log.i(info.account.name); // prints ******
boolean result = original.equals(info.account.name); // always false?
}
授予的权限:
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_SYNC_STATS" />
在 Android 上
编辑: 直接从 AccountManager 访问帐户名称是可读的。 (getAccounts())
知道了。
没有找到任何文档,但在 SyncInfo.java 的 source code 的第 32 行:
/**
* Used when the caller receiving this object doesn't have permission to access the accounts
* on device.
* @See Manifest.permission.GET_ACCOUNTS
*/
private static final Account REDACTED_ACCOUNT = new Account("*****", "*****");
我仔细检查了权限,但没有发现问题,所以我断开了 phone 的连接,得到 icetea 并观看了 netflix。这解决了问题。
编辑:我曾经更改过帐户类型定义,但这并不能解释为什么 getCurrentSyncs() 被审查而 getAccounts() 没有。
Edit2:在另一个 phone 上遇到问题:禁用并重新启用我的应用程序所需的 CONTACTS 权限后,GET_ACCOUNTS 被真正授予,问题消失了。