Android Question B4xpagesmanager error

djmainero

Member
Licensed User
Longtime User
Hello!

I'm getting this error informed on firebase crashlytics, i can't reproduce it, so I don't know how to fix it or where's the problem.

Error:
Fatal Exception: java.lang.NullPointerException: Attempt to read from field 'java.lang.Object com.empresa.appname.b4xpagesmanager$_b4xpageinfo.B4XPage' on a null object reference
       at com.empresa.appname.b4xpagesmanager._getpage(b4xpagesmanager.java:575)
       at com.empresa.appname.b4xpages._getpage(b4xpages.java:75)
       at com.empresa.appname.b4xmainpage$ResumableSub_B4XPage_Created.resume(b4xmainpage.java:279)
       at com.empresa.appname.b4xmainpage._b4xpage_created(b4xmainpage.java:184)
       at java.lang.reflect.Method.invoke(Method.java)
       at anywheresoftware.b4a.BA.raiseEvent2(BA.java:213)
       at anywheresoftware.b4a.keywords.Common.CallSub4(Common.java:1082)
       at anywheresoftware.b4a.keywords.Common.CallSubNew2(Common.java:1037)
       at com.empresa.appname.b4xpagesmanager._createpageifneeded(b4xpagesmanager.java:532)
       at com.empresa.appname.b4xpagesmanager._showpage(b4xpagesmanager.java:869)
       at com.empresa.appname.b4xpagesmanager._addpage(b4xpagesmanager.java:209)
       at com.empresa.appname.b4xpagesmanager._addpageandcreate(b4xpagesmanager.java:216)
       at com.empresa.appname.b4xpagesmanager._initialize(b4xpagesmanager.java:720)
       at com.empresa.appname.main._activity_create(main.java:378)
       at java.lang.reflect.Method.invoke(Method.java)
       at anywheresoftware.b4a.BA.raiseEvent2(BA.java:213)
       at com.empresa.appname.main.afterFirstLayout(main.java:105)
       at com.empresa.appname.main.access$000(main.java:17)
       at com.empresa.appname.main$WaitForLayout.run(main.java:83)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:148)
       at android.app.ActivityThread.main(ActivityThread.java:5421)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Thanks!!
 

djmainero

Member
Licensed User
Longtime User
Of course, here's

Private Sub B4XPage_Created (Root1 As B4XView):
If Glo.CrearPages Then
        Glo.CrearPages = False
        
        Home.Initialize
        B4XPages.AddPageAndCreate("Home", Home)
    
        ListadoDeudaPage.Initialize
        B4XPages.AddPageAndCreate("ListadoDeudaPage", ListadoDeudaPage)
    
        GuiaPage.Initialize
        B4XPages.AddPageAndCreate("GuiaPage", GuiaPage)
    
        ConsumosPage.Initialize
        B4XPages.AddPageAndCreate("ConsumosPage", ConsumosPage)
    
        ReclamosPage.Initialize
        B4XPages.AddPageAndCreate("ReclamosPage", ReclamosPage)
    
        UsuariosPage.Initialize
        B4XPages.AddPageAndCreate("UsuariosPage", UsuariosPage)
        
        NotificacionesPage.Initialize
        B4XPages.AddPageAndCreate("NotificacionesPage", NotificacionesPage)
        
        AdherentesPage.Initialize
        B4XPages.AddPageAndCreate("AdherentesPage", AdherentesPage)
        
        FallecidosPage.Initialize
        B4XPages.AddPageAndCreate("FallecidosPage", FallecidosPage)
        
        ProblemaIniciarPage.Initialize
        B4XPages.AddPageAndCreate("ProblemaIniciarPage", ProblemaIniciarPage)
    Else
        Home = B4XPages.GetPage("Home")
        ListadoDeudaPage = B4XPages.GetPage("ListadoDeudaPage")
        GuiaPage = B4XPages.GetPage("GuiaPage")
        ConsumosPage = B4XPages.GetPage("ConsumosPage")
        ReclamosPage = B4XPages.GetPage("ReclamosPage")
        UsuariosPage = B4XPages.GetPage("UsuariosPage")
        NotificacionesPage = B4XPages.GetPage("NotificacionesPage")
        AdherentesPage = B4XPages.GetPage("AdherentesPage")
        FallecidosPage = B4XPages.GetPage("FallecidosPage")
        ProblemaIniciarPage = B4XPages.GetPage("ProblemaIniciarPage")
    End If
    B4XPages.GetManager.LogEvents = True

    Root = Root1
    Root.LoadLayout("LoginPage")
    If Glo.isDarkMode Then
        iLogoSys.SetBitmap(xui.LoadBitmapResize(File.DirAssets, "LogoMembreteB.png", iLogoSys.Width, iLogoSys.Height, True))
    End If
    'CheckUpdate
    
    SetStatusBarColor(xui.Color_ARGB(255, 63, 99, 171))
    ShowLoading
    CreaListaLogin
    
    #If B4A
    Private cd As ColorDrawable
    cd.Initialize(Colors.Transparent, 0)
    txtUsuario.Background = cd
    txtPass.Background = cd
    If Not(Glo.FondoCoop.IsInitialized) Then Glo.FondoCoop = xui.LoadBitmapResize(File.DirAssets, "fondocoop.jpg", 100%x, 100%y, True)
    #Else
    Glo.FondoCoop = xui.LoadBitmap(File.DirAssets, "fondocoop.jpg")
    #End If
    
    DateTime.DateFormat = "dd/MM/yyyy"   
    imgFondoHeader.SetBitmap(Glo.FondoCoop)
    Wait For (initDB) Complete(Result As Boolean)

    Try
        For Each Archivo As String In File.ListFiles(Glo.Provider.SharedFolder)
            If Archivo.EndsWith(".pdf") Then File.Delete(Glo.Provider.SharedFolder, Archivo)
        Next
    Catch
        Log(LastException)
    End Try
        
    Wait For (listaCoops) Complete(Finish As Boolean)
    #IF Coop
    listadoCooperativas.mBase.Visible = False
    #End If
    If Finish Then
        #IF Coop
        For i = 0 To listadoCooperativas.Size
            'Log(listadoCooperativas.GetItem(i)) 'Cooperativa de Gral. Coop
            If listadoCooperativas.GetItem(i).Contains("Coop") Then
                lblNombreApp.Text = listadoCooperativas.GetItem(i)
                setCoope(i)
                listadoCooperativas_SelectedIndexChanged(i)
                Exit
            End If
        Next
        #End If
    End If

Glo.CrearPages start always as True, and sets to False here only

Thanks!
 
Upvote 0
Top