我正在按照this教程将EULA添加到我的Android应用程序中,但我有两个问题: 1)我的应用程序基于小部件,我想在小部件启动后立即显示我的EULA。小部件有“onCreate”方法吗? 2)如果用户拒绝EULA,我想关闭我的应用程序。我是C#程序员,所以我不知道Android应用程序是否有任何“Exit()”方法。如何在没有用户操作的情况下强行关闭我的应用程序?
答案 0 :(得分:5)
根据android doc page for AppWidget,您可能对onEnabled和onDisabled方法感兴趣:
onEnabled(Context)
This is called when an instance the App Widget is created for the first time.
For example, if the user adds two instances of your App Widget, this is only called the first time.
If you need to open a new database or perform other setup that only needs to occur once for all App Widget instances, then this is a good place to do it.
onDisabled(Context)
This is called when the last instance of your App Widget is deleted from the App Widget host.
This is where you should clean up any work done in onEnabled(Context), such as delete a temporary database.
因此,如果用户拒绝,您可以调用onDisabled(Context)
答案 1 :(得分:1)
本身没有onCreate()
,但有一种方法可以在首次添加小部件时显示活动。这样做的一种方法如下。
在AppWidget提供程序XML文件中,请确保添加为appwidget-provider
的属性:
android:configure="your.eula.activity"
并且不要忘记在your.eula.activity
AndroidManifest.xml
<activity android:name="your.eula.activity">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
在your.eula.activity
的{{1}}中你应该致电
onCreate()
答案 2 :(得分:0)
初次进行初始化时,你不能只展示EULA吗?我不熟悉你的代码,所以我不确定你的情况是否可能,但这是可能的。
要结束活动,只需致电this.finish()
。