2017-05-27 19 views
-1

私の人生の間違ったこのエラーは、私はもはや私は何をGoogleにもう知りません。 これは私の最初のクラスの断片です。 (You can view the whole thing here私のクラス作成がスキップされている理由

私は 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(); 
    } 
それで
@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"); 

私はここで間違ってやっていること

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は実際のアクティビティ(UIなどあり)ではないようですので、RealmManagerの宣言からextends Activityを削除してください。次に、ほかのJavaオブジェクトと同じように、自分のRealmManagerのメソッドを呼び出す手配をする必要があります。

0

んが、あなたはありません

"私はレルム管理者には、作成していない実行しています"。 newが呼び出されました。このコンストラクタはデフォルトのコンストラクタを呼び出し、onCreateを呼び出すことはありません。

、私はすべてのこと、他のコードがApplicationクラスに属していると考えているいくつかのレルムのオブジェクトに

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(); 
    } 

プラス、

RealmManager realmManager = new RealmManager(this); 

を管理通常のJavaオブジェクトを作成するには、次を試してみてくださいどのアクティビティでもない

たとえば

関連する問題