码迷,mamicode.com
首页 > 其他好文 > 详细

Intent跳转activity报错

时间:2016-05-16 20:03:26      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
               
                 
startActivityForResult(intent, PICK_CONTACT);

这个跳转为什么部分手机会报错呢??
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.PICK dat=content://com.android.contacts/contacts }
因为有些版本有些rom的android没有提供下载这个activity。或者系统里的那个应用出现问题
像这种使用ACTION隐式启动Activity的,最好在之前先判断是否有对应的Activity可以响应。
if (intent.resolveActivity(getPackageManager()) != null)
{
startActivityForResult(intent, PICK_CONTACT); }

甚至有些Intent会crash(其他帖子看到):startActivity(new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS
这个问题有可能是直接写class名字,有可能不同版本名字不一样引起的问题
正确做法是,在跳转的时候不写死的Calss名,而是用的系统提供的Settings.ACTION_WIFI_SETTINGS,如果不同版本的Class名不一样,这里action对应的名字应该会变。
 

Intent跳转activity报错

标签:

原文地址:http://www.cnblogs.com/seven-sky/p/5499006.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!