我在安卓系统上使用MobFox。我的一个布局中有一个MobFoxView。当我为4.0.3编译Android时运行得很好。然而,我想试着为2.0.1构建它,现在它不能工作了。
在可视化编辑器上,我得到以下错误:
The following classes could not be instantiated:
- (Open Class, Show Error Log)
See the Error Log (Window > Show View) for more details.
Tip: Use View.isInEditMode() in your custom views to skip code when shown in Eclipse在错误日志中,我看到:
com.mobfox.sdk.MobFoxView failed to instantiate.
java.lang.NullPointerException
at com.mobfox.sdk.MobFoxView.<init>(MobFoxView.java:189)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)我的MobFox视图代码是:
<com.mobfox.sdk.MobFoxView
android:id="@+id/mobFoxView"
android:layout_width="fill_parent"
android:layout_height="50dp"
mode="live"
publisherId="..." />我正在通过.jar文件导入MobFox库。在为Android 4.0.3编译时运行良好。
提前谢谢你
发布于 2012-07-07 17:28:41
事实证明是完全不相关的:在布局中,我在Android4中有两个属性"match_parent",但在Android2中不支持。将它们更改为"fill_parent“可以让gen文件夹中的文件再次正常生成,并且一切正常。
毕竟这不是MobFox的问题。
发布于 2012-07-07 11:20:37
您的最低构建版本应该是用于构建MobFox的版本,但如果没有注册,我无法在他们的网站上看到这一点。将目标版本(通过project>properties或project.properties)设置为android-15 (或其他任何值),但在Android-Manifest.xml中将min指定为6(或其他值),并将target sdk指定为15 (同样,其他值)。你需要小心将自己限制在最小版本的Android功能上。
假设这是有效的,并且MobFox可以在你的较低版本的安卓中使用,你可以降低构建应用程序接口级别并重新测试,直到它失败,但在实践中(国际海事组织)如果你想成为未来的证明,你应该保持较高的构建应用程序接口级别,并针对最低级别进行测试。
注意,API 6 (2.0.1)已经被标记为过时,你最好瞄准API 4 (Android1.6)或API 7 (2.2)
https://stackoverflow.com/questions/11371657
复制相似问题