2016-04-26 21 views
1

Meine App viele Hintergrundaufgaben und hat wenige Aktivitäten und die meiste Arbeit ist im Hintergrund getan.Wo zu initialisieren Holz und Crashlytics

Angenommen, ich füge Holz und Crashlytics zu meiner App hinzu. Wie kann ich sicherstellen, dass, wenn die App auf dem Gerät aktualisiert wird, Holz und Crashlytics initialisiert werden, ohne dass die Aktivität geöffnet wird.

dank

Antwort

1

Wenn Sie Ihre App aktualisieren, es ist immer beendet und neu gestartet - Holz und Crashlytics kann zu diesem Zeitpunkt initialisiert werden. Wenn Ihre Anwendung gestartet wird, wird die Methode onCreate() der Klasse android.app.Application aufgerufen. Um dieser Methode zusätzliche Logik hinzuzufügen, müssen Sie eine neue MyApplication-Klasse erstellen, die die Klasse Application erweitert und die Methode onCreate() überschreibt.

public class MyApplication extends Application { 

    @Override 
    public void onCreate() { 
     super.onCreate(); 
     //here initialize Timber and Crashlytics 
    } 
} 

ist standardmäßig android.app.Application Klasse verwendet Anwendungskontext zu initialisieren. Informationen darüber, dass eine andere Application Klasse verwendet wird, sollten in AndroidManifest.xml Datei zur Verfügung gestellt werden.

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.myname.app"> 

    <application android:name="com.myname.MyApplication"> 
     <activity android:name=".MyActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

    </application> 
</manifest>