2017-05-27 53 views
-1

好吧,这个错误对我来说是无法想象的,我甚至不知道该怎么去google了。 这是我最初的课程的一部分。 (You can view the whole thing here为什么我的班级创作被跳过

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     Log.i("Avariel", "I am running"); 

     RealmManager realmManager = new RealmManager(); 

     Log.i("Avariel", "I have passed RM"); 

在这里面我想创建一个类域管理器(You can view the whole class here)的。在这一点上,我甚至可以得到"I am running Realm Manager's on Create"显现。当我调试它只是冻结。

public class RealmManager extends Activity { 

    public static final String TAG = MainFragmentActivity.class.getName(); 
    private Realm realm; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     Log.i("Avariel REALM", "I am running Realm Manager's on Create"); 
     /** 
     * https://realm.io/docs/java/latest/#getting-started 
     * http://facebook.github.io/stetho/ 
     * https://github.com/uPhyca/stetho-realm 
     * chrome://inspect/#devices 
     */ 
     /* Stetho.initializeWithDefaults(this); 
     Realm.init(this); 
     Stetho.initialize(
       Stetho.newInitializerBuilder(this) 
         .enableDumpapp(Stetho.defaultDumperPluginsProvider(this)) 
         .enableWebKitInspector(RealmInspectorModulesProvider.builder(this).build()) 
         .build()); 

     realm = Realm.getDefaultInstance(); 
     realm.beginTransaction(); 
     Player player = realm.createObject(Player.class); 
     player = player.create(01, "Gideon", "Barlock", "Orc", "Lawful Evil", "Fighter", "A wandering Warrior", 0, 30, 0, null, null, null, null, null, null, null, null, null, 0); 
     realm.commitTransaction(); 
     Realm.init(this); 

     RealmConfiguration config = new RealmConfiguration.Builder().build(); 
     Realm.setDefaultConfiguration(config);*/ 
    } 

    @Override 
    protected void onDestroy() { 
     super.onDestroy(); 
     realm.close(); 
    } 

含义日志我看到

05-27 22:38:13.477 32158-32158/com.example.gideonsassoon.avariel I/Avariel: I am running 
05-27 22:38:13.559 32158-32158/com.example.gideonsassoon.avariel I/Avariel: I have passed RM 

我做了什么错在这里。You can view the full project here

非常感谢您的帮助,

+1

为什么'RealmManager延伸Activity'? –

回答

1

决不通过构造自己创建的Activity一个实例。

由于RealmManager似乎不是一个实际的活动(带有用户界面等),请从您的RealmManager声明中删除extends Activity。然后,您需要自己安排调用RealmManager上的方法,就像其他任何Java对象一样。

0

“我正在境界经理对创建”

不,你不是。你调用了new,它调用了默认的构造函数,它永远不会调用onCreate

请尝试以下方法创建管理某些领域对象

public class RealmManager { 

    private final Context context; 
    private final Realm realm; 

    public RealmManager(Context context) { 
     Log.i("Avariel REALM", "I am running Realm Manager"); 
     context = context; 
     realm = Realm.getDefaultInstance(); 
    } 

再加上常规的Java对象

RealmManager realmManager = new RealmManager(this); 

我相信所有其他的代码属于在Application类,没有任何活动

例如

相关问题