Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.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
Ibeacon 应用程序从后台返回时beaconManager给我错误_Ibeacon - Fatal编程技术网

Ibeacon 应用程序从后台返回时beaconManager给我错误

Ibeacon 应用程序从后台返回时beaconManager给我错误,ibeacon,Ibeacon,我在应用程序中使用altbeacon库。启动后一切正常,但若我从应用程序中退出,她在后台,我会在状态栏上收到关于信标的通知。单击此通知时,我收到以下错误: Process: pl.hekko.kesser.beacontest, PID: 29929 java.lang.RuntimeException: Unable to start activity ComponentInfo{pl.hekko.kesser.beacontest/pl.hekko.kesser.beaco

我在应用程序中使用altbeacon库。启动后一切正常,但若我从应用程序中退出,她在后台,我会在状态栏上收到关于信标的通知。单击此通知时,我收到以下错误:

 Process: pl.hekko.kesser.beacontest, PID: 29929
        java.lang.RuntimeException: Unable to start activity ComponentInfo{pl.hekko.kesser.beacontest/pl.hekko.kesser.beacontest.MainActivity}: java.lang.UnsupportedOperationException
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2202)
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
                at android.app.ActivityThread.access$800(ActivityThread.java:139)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
                at android.os.Handler.dispatchMessage(Handler.java:102)
                at android.os.Looper.loop(Looper.java:136)
                at android.app.ActivityThread.main(ActivityThread.java:5103)
                at java.lang.reflect.Method.invokeNative(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:515)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
                at dalvik.system.NativeStart.main(Native Method)
         Caused by: java.lang.UnsupportedOperationException
                at java.util.Collections$UnmodifiableCollection.add(Collections.java:928)
                at pl.hekko.kesser.beacontest.MainActivity.onCreate(MainActivity.java:83)
                at android.app.Activity.performCreate(Activity.java:5275)
                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2166)
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
                at android.app.ActivityThread.access$800(ActivityThread.java:139)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
                at android.os.Handler.dispatchMessage(Handler.java:102)
                at android.os.Looper.loop(Looper.java:136)
我的主要活动行83:

beaconManager.getBeaconParsers().add(new BeaconParser().
                setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
我不确定这一挫折是否能解决,但总体来说似乎效果不错。
有时应用程序不启动会显示错误,但第二次单击图标会启动应用程序。这似乎是同一个错误造成的。

问题是,当库第一次启动时,您只能配置一次活动的
BeaconParser
s列表,因此当您再次尝试配置时,会出现错误。虽然在自定义
应用程序的
onCreate
方法中只执行一次比较容易,但如果将其包装在类似以下的if语句中,则可以在
活动的
onCreate
方法中执行此操作:

// Only execute the code below if only the default BeaconParser is active
if (beaconManager.getBeaconParsers().size() == 1) {
    // Put your BeaconParser setup code here
    ... 
}