Android清单文件和活动名称

时间:2016-11-18 21:45:08

标签: android eclipse

在我最近从Eclipse迁移到Android Studio的项目中,我正在调查可怕的“ ClassNotFoundException:未在路径上找到类:DexPathList ”的实例(请参阅此类型的讨论)问题在于:Android ClassNotFoundException: Didn't find class on path)我将其跟踪到我的AndroidManifest.xml文件的格式。

即,我有一个完全限定的包名,但活动名称被指定为。 。 。

<activity android:name="MyActivity" ...

......什么时候想要的是......

<activity android:name=".MyActivity" ...

...注意活动名称前面的“点”。但是我的Eclipse项目中的AndroidManifest.xml文件都没有这个点,它们构建并运行正常。我的Eclipse项目和Android Studio项目之间的另一个区别是,对于后者,应用程序被加载到具有较新版操作系统的设备上--Lollipop vs Kitkat(尽管发货版本并非严格要求)。

所以我的问题是,这种格式是带有操作系统新功能的点,还是与Android Studio相关的要求,还是什么?它一直在那里,但Eclipse没有抓住它吗?到目前为止,我如何摆脱这种局面?

1 个答案:

答案 0 :(得分:1)

  

我将其追溯到AndroidManifest.xml文件的格式

你认为你做到了。

  

我有一个完全合格的包名,但活动名称被指定为......但我想要的是......

具有相同含义:活动的完全限定类名包括清单中package属性中标识的包名称。

  

是这种格式,点是OS的新功能

没有

  

或者是与Android Studio相关的要求

没有。对于初学者来说,这不是必需的。如果你通过the several hundred projects in my book推杆,你会发现带点和无点声明(以及有时候是完全限定的包名)。

  

它一直存在吗

对于2008年份的Android版本,我的记忆模糊不清。两种方法都支持了5年以上。

  

到目前为止,我如何摆脱这种局面?

因为这两种方法都有效。