Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法解析符号';活动信息&x27;_Java_Android_Android Intent - Fatal编程技术网

Java 无法解析符号';活动信息&x27;

Java 无法解析符号';活动信息&x27;,java,android,android-intent,Java,Android,Android Intent,带有“r.activityInfo”的行在编译时返回“错误:找不到符号变量activityInfo” 公共类MainActivity扩展了ActionBarActivity{ @Override protected void onCreate(Bundle savedInstanceState) { Log.d("LP1", "Created"); super.onCreate(savedInstanceState); final Intent mainIntent =

带有“r.activityInfo”的行在编译时返回“错误:找不到符号变量activityInfo”

公共类MainActivity扩展了ActionBarActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    Log.d("LP1", "Created");
    super.onCreate(savedInstanceState);

    final Intent mainIntent = new Intent(Intent.ACTION_VIEW, android.net.Uri.parse("http://abc"));
    mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
    final List<ResolveInfo> browsList = this.getPackageManager().queryIntentActivities( mainIntent, 0);
    Iterator itr = browsList.iterator();
    while(itr.hasNext()) {
        Object r = itr.next();
        ActivityInfo s = r.activityInfo;
    }
@覆盖
创建时受保护的void(Bundle savedInstanceState){
日志d(“LP1”,“创建”);
super.onCreate(savedInstanceState);
final Intent maintent=new Intent(Intent.ACTION_视图,android.net.Uri.parse(“http://abc"));
mainIntent.addCategory(Intent.CATEGORY_启动器);
最终列表浏览列表=this.getPackageManager().QueryInputActivities(mainIntent,0);
迭代器itr=browsList.Iterator();
while(itr.hasNext()){
对象r=itr.next();
ActivityInfo s=r.ActivityInfo;
}
。。。
}

您声明了
对象r
,但是
对象
类没有名为
活动信息
的成员

要解决此问题,请使用增强的for循环:

for (ResolveInfo r : browsList) {
    ActivityInfo s = r.activityInfo;
}

您只需为每个循环添加一个类型转换或使用

while(itr.hasNext()) {
        ResolveInfo r = (ResolveInfo)itr.next();
        ActivityInfo s = r.activityInfo;
    }

更好的方法是使用泛型并使强制转换不相关。