有没有“什么”呢;onCreate";Android小部件的方法?

有没有“什么”呢;onCreate";Android小部件的方法?,android,android-widget,Android,Android Widget,我正在学习将EULA添加到Android应用程序的教程,但我有两个问题: 1) 我的应用程序基于widget,我希望在widget启动后立即显示我的EULA。小部件是否有“onCreate”方法? 2) 如果用户拒绝EULA,我想关闭我的应用程序。我是C#程序员,所以我不知道Android应用程序是否有“Exit()”方法。如何在没有用户操作的情况下强制关闭我的应用程序?你不能在初始化等操作时显示EULA吗?我不熟悉你的代码,所以我不确定在你的情况下是否可能,但这是可能的 要结束活动,只需调用t

我正在学习将EULA添加到Android应用程序的教程,但我有两个问题: 1) 我的应用程序基于widget,我希望在widget启动后立即显示我的EULA。小部件是否有“onCreate”方法?
2) 如果用户拒绝EULA,我想关闭我的应用程序。我是C#程序员,所以我不知道Android应用程序是否有“Exit()”方法。如何在没有用户操作的情况下强制关闭我的应用程序?

你不能在初始化等操作时显示EULA吗?我不熟悉你的代码,所以我不确定在你的情况下是否可能,但这是可能的

要结束活动,只需调用
this.finish()

即可。根据,您可能对和方法感兴趣:


因此,如果用户拒绝,您可以调用onDisabled(Context)

本身没有
onCreate()
,但有一种方法可以在首次添加小部件时显示活动。实现这一点的一种方法如下

在AppWidget提供程序XML文件中,请确保添加为
AppWidget提供程序的属性:

android:configure="your.eula.activity"
不要忘了在
AndroidManifest.xml

<activity android:name="your.eula.activity">
     <intent-filter>
           <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
     </intent-filter>
</activity>

不仅仅是活动-整个应用程序!如何做到这一点?我真的认为不建议这样做。但是执行以下操作应该可以:android.os.Process.killProcess(android.os.Process.myPid());为什么您需要实际终止该过程?如果有人愿意,他们可以拒绝您的EULA,然后在您的应用程序中手动启动任何活动。您可以将EULA accept status写入
SharedReferences
,并在应用程序中的所有活动和组件中为该标志设置防护。即使这样也可以避免,对我来说似乎没有什么用处。那么,有没有办法强迫用户选择:接受EULA并使用程序,或者拒绝EULA并在他/她接受之前不能使用它?不会起作用-EULA类不是活动,它只是一个类:)@guess86:为什么不能将EULA类变成活动?是的,我现在正在研究它,然后我会尝试上面的代码只是好奇,因为我并没有实际测试这个——我的方法有效吗?
<activity android:name="your.eula.activity">
     <intent-filter>
           <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
     </intent-filter>
</activity>
 setResult(RESULT_CANCELED);
 finish();