Android SMS & GPS App - 安全权限
Posted
技术标签:
【中文标题】Android SMS & GPS App - 安全权限【英文标题】:Android SMS & GPS App - Security Permission 【发布时间】:2016-10-17 20:31:26 【问题描述】:我的原型应用程序出现问题。它在我的 PC 上的两个模拟器之间运行良好,但是当我将它安装在手机上时,它不会发送短信,甚至不会请求许可(如果这是问题的话)。 此外,无论我做什么,在应用程序启动时,每次按下按钮时以及在每次新的意图启动时,我都会收到相同的错误:
E/DatabaseUtils: Writing exception to parcel
java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:13140)
at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2038)
at com.android.providers.settings.SettingsProvider.callFromPackage(SettingsProvider.java:607)
at android.content.ContentProvider$Transport.call(ContentProvider.java:279)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:273)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method)
我一直在研究很多类似的问题,我确实添加了
使用权限 android:name="android.permission.INTERACT_ACROSS_USERS_FULL" android:protectionLevel="signature"/>
到我的清单,但似乎没有什么对我有用。 对我来说真正奇怪的是错误发生在应用程序启动时,因为在那一点上似乎没有任何有趣的事情发生:
public class MainActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Go to contact list
public void onClick(View view)
Intent i = new Intent(this,AddContact.class);
startActivity(i);
public void onGPS(View view)
Intent j = new Intent(this,GPSActivity.class);
startActivity(j);
@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;
return super.onOptionsItemSelected(item);
有什么想法吗?
【问题讨论】:
您是否曾在同一设备上为多个用户安装了该应用程序? 查看link 嗯好的,所以这似乎是一个 S3 问题。这实际上是我正在使用的手机! - 不,我没有为多个用户安装该应用程序。 【参考方案1】:问题似乎出在三星 Galaxy S3 上。链接:Permission Denial: this requires android.permission.INTERACT_ACROSS_USERS_FULL Sumighosh Chaurvil 提供的解释了这个问题;而且真的没什么可做的。
我在另一部手机上安装了该应用程序,它没有任何问题!
【讨论】:
以上是关于Android SMS & GPS App - 安全权限的主要内容,如果未能解决你的问题,请参考以下文章
android 4.4(KitKat)上,如何开发SMS功能的APP