2016-05-24 94 views
2

我在我的项目中初始化ActiveAndroid时遇到问题。这是清单中的应用程序标记需要像这样的状态:使用ActiveAndroid和MultiDexApplication

<application android:name="com.activeandroid.app.Application" ...> 

不幸的是,我有它已经为这个

<application android:name="android.support.multidex.MultiDexApplication"> 

它说,你可以通过具有类解决问题在应用程序标签中是ActiveAndroid的子类。

另请注意,应用程序名称指向ActiveAndroid应用程序类。 这一步是ActiveAndroid工作所必需的。如果你已经指向一个自定义的应用程序类,只需将该类作为com.activeandroid.app.Application的一个子类。

如果您使用的是自定义的应用程序类,只是延长com.activeandroid.app.Application代替android.app.Application

公共类MyApplication的扩展com.activeandroid.app.Application {...

有没有办法让我解决这个问题?我无法将代码更改为MultiDexApplication类,因为它是Android SDK的一部分。

回答

3

MultiDexApplication是应用程序子类(MultiDexApplication),所以扩展并配置了ActiveAndroid。

public class MyApplication extends MultiDexApplication { 
    @Override 
    public void onCreate() { 
    super.onCreate(); 

    Configuration config = new Configuration.Builder(this) 
    .setDatabaseName("mydb.db") 
    .setDatabaseVersion(1) 
    .create(); 
    ActiveAndroid.initialize(config); 
    } 
} 

在您的清单,

<application android:name=".MyApplication"> 
+0

这应该是'新Configuration.Builder(本)''没有新的配置(这)'。 – nasch

+0

啊。接得好。固定。 –

+0

很好的帮助..非常感谢 – faruk