Android 有 "onInstall" 方法吗?
Does Android have an "onInstall" method?
我正在尝试通过以下简单代码使用 Firebase 记录我的应用安装情况:
firebaseAnalytics.logEvent("foo", bundle);
但是,我不确定将这段代码放在哪里。有人知道应用程序 class 中的 "onInstall" 方法吗?
或者是否有另一种更简单的方法来记录 Firebase 的安装?
谢谢!
您可以确定用户是否是第一次启动应用程序,并记录该事件。
public class MyActivity extends Activity {
SharedPreferences prefs = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Perhaps set content view here
prefs = getSharedPreferences("com.mycompany.myAppName", MODE_PRIVATE);
}
@Override
protected void onResume() {
super.onResume();
if (prefs.getBoolean("firstrun", true)) {
firebaseAnalytics.logEvent("foo", bundle);
prefs.edit().putBoolean("firstrun", false).commit();
}
}
}
此 SO answer.
引用的代码
同样的 SO question that explained how to differentiate between first run and subsequent upgrades, I'll just link that SO answer 中还有另一个答案供您参考。
最干净的方法是让远程服务器为每个用户保存一个唯一的 ID。
此外,理论上您可以直接在设备上写入文件。但是,您需要获得写入权限,并且在设备上创建和保留文件绝对不是一个好主意。
P.S - 要回答实际问题,不,Android 没有 onInstall
方法。
我正在尝试通过以下简单代码使用 Firebase 记录我的应用安装情况:
firebaseAnalytics.logEvent("foo", bundle);
但是,我不确定将这段代码放在哪里。有人知道应用程序 class 中的 "onInstall" 方法吗?
或者是否有另一种更简单的方法来记录 Firebase 的安装?
谢谢!
您可以确定用户是否是第一次启动应用程序,并记录该事件。
public class MyActivity extends Activity {
SharedPreferences prefs = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Perhaps set content view here
prefs = getSharedPreferences("com.mycompany.myAppName", MODE_PRIVATE);
}
@Override
protected void onResume() {
super.onResume();
if (prefs.getBoolean("firstrun", true)) {
firebaseAnalytics.logEvent("foo", bundle);
prefs.edit().putBoolean("firstrun", false).commit();
}
}
}
此 SO answer.
引用的代码同样的 SO question that explained how to differentiate between first run and subsequent upgrades, I'll just link that SO answer 中还有另一个答案供您参考。
最干净的方法是让远程服务器为每个用户保存一个唯一的 ID。
此外,理论上您可以直接在设备上写入文件。但是,您需要获得写入权限,并且在设备上创建和保留文件绝对不是一个好主意。
P.S - 要回答实际问题,不,Android 没有 onInstall
方法。