Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android SharedReferences检索停止代码_Android_Sharedpreferences - Fatal编程技术网

Android SharedReferences检索停止代码

Android SharedReferences检索停止代码,android,sharedpreferences,Android,Sharedpreferences,我有一个广播接收器类,在手机重新启动时成功运行。我的问题是,当我试图从SharedReferences检索信息时,代码停止运行,什么也不会继续。这是onReceive方法的开始: SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context); if(sp.getBoolean("alarmRunning", false)) { Log.d("test", "Fixing alar

我有一个广播接收器类,在手机重新启动时成功运行。我的问题是,当我试图从SharedReferences检索信息时,代码停止运行,什么也不会继续。这是onReceive方法的开始:

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
    if(sp.getBoolean("alarmRunning", false)) {
        Log.d("test", "Fixing alarms1");
        String name = sp.getString("currentName", "");
        String description = sp.getString("currentDescription", "");
        long exactTriggerTime = sp.getLong("exactTriggerTime", 0);
        long offsetTriggerTime = sp.getLong("offsetTriggerTime", 0);
        String intentNameExtra = sp.getString("intentNameExtra", "");
        String intentDescriptionExtra = sp.getString("intentDescriptionExtra", "");
        boolean runOnce = sp.getBoolean("runOnce", true);
        long interval = sp.getLong("interval", 0);
        long totalOffset = sp.getInt("totalOffset", 0);
        Log.d("test", "Fixing alarms");
        Log.d("test", String.valueOf(runOnce));
当我在手机上运行它时,返回的是“Fixing alarms1”,而不是“Fixing alarms”或runOnce变量的值。有人能解释一下这种行为吗?它不应该因为找不到东西而坏掉,因为所有东西都有它的默认值。我还检查了带有测试过滤器和不带过滤器的控制台,没有显示错误消息


编辑:在进一步测试之后,我意识到它不喜欢从SharedReferences中获取一个int变量并将其分配给一个long。我的错。

为什么
长总偏移量
但使用
sp.getInt
方法?尝试
getLong
。那么日志猫怎么说呢?是的,那是我的问题。我没有意识到我尝试了很长时间拉整数。那么,这解决了问题吗?是的,它解决了问题。