如何在每个应用启动时运行一次方法?

Aas*_*hir 3 android

嘿,我想知道如何在我refreshChannel();onCreate一个活动中只运行一次方法,直到应用程序被终止或重新启动?

Ada*_*m S 6

您可以ApplicationonCreate自定义应用程序类中扩展和运行该方法.这仅在每次应用程序启动时运行一次.

例如:

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        // Your methods here...
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,这不应该长时间运行.如果它需要一些时间,那就去做吧AsyncTask.

最后,你需要告诉Android你有一个自定义的Application类.您可以通过android:nameapplication标记的属性中引用应用程序类来在清单中执行此操作:

<manifest ... >
    <application
        android:name=".MyApp"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity>
            ...
        </activity>
    </application>
</manifest>
Run Code Online (Sandbox Code Playgroud)