SecurityException: Отказ в разрешении требует нуля - PullRequest
0 голосов
/ 20 мая 2010

Я хотел бы запустить рынок с экрана предпочтений, но когда я пытаюсь это сделать, я получаю java.lang.SecurityException: Отказ в разрешении: начало намерения {cmp = com.action.test / .ui.activities.Test } из ProcessRecord {44db1300 3697: com.pippo.pluto / 10067} (pid = 3697, uid = 10067) требуется ноль. Это мой код:

startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse("market://search?q=pname:com.action.test")));

что я делаю не так?

Спасибо заранее Тобия

1 Ответ

0 голосов
/ 09 июня 2010

Я сделал следующее:

private class SupportDevListener implements OnPreferenceClickListener
{
    @Override
    public boolean onPreferenceClick(Preference preference) 
    {
        try
        {
            Intent launchIntent = new Intent(Intent.ACTION_VIEW);
            launchIntent.setData(Uri.parse(getString(R.string.market_search_url)));
            startActivity(launchIntent);
        }
        catch (ActivityNotFoundException e)
        {
            Toast.makeText(AppSwipePreferences.this, R.string.error_launching_app, Toast.LENGTH_SHORT).show();
        }

        return true;
    }
}

Мой R.string.market_search_url определяется как: market: // search? Q = magouyaware

Я решил поместить его в блок try, потому что есть некоторые телефоны Android, у которых нет Android Market (они не являются устройствами Google Experience). Если приложение Market не может быть найдено, отображается всплывающее сообщение о том, что приложение не может быть найдено.

Надеюсь, это поможет ...

...