iOS Question How to compile b4i-bridge, roles of bridge vs configurator

scGuy

Member
Licensed User
Sorry in advance I haven't tried b4i in five years, everything has changed.

b4j - F5 and it runs
b4a - android phone in developer mode, F5 and my application appears on phone, all done, debugging through usb.

b4i ... ?

I still have a mac, I updated my local builder to most recent version, installed most recent version of b4i
On the apple side, have active developer subscription and profile set up.
The csr/keys are all set up in b4i IDE.

Now, it appears all the tutorials on the main page are out of date -- they talk about using b4i-bridge over wifi, but there is a note that no, you have to use Apple Configurator. So I installed configurator on mac, ran it, started the build server, nothing works. B4i IDE can't even connect to mac.

I don't understand -- does b4i-bridge still have a role to play here? Is debugging still over wifi? If so what is the role of configurator and the wired USB connection?

If there is a more recent complete tutorial on how to run your first app with local builder, let me know -- still looking for a guide. I've watched the video tutorials, they were made before configurator played a role.

Thanks
 

scGuy

Member
Licensed User
Making marginal progress. Yes my B4i IDE is connecting to my local builder. I eventually found and made this change to the empty project used when invoking Tools -> Build Server -> Build B4i-Bridge App

B4X:
#MinVersion: 11

... now the build of b4i-bridge is failing with this error:

Error: 2023-07-11 16:04:49.330 xcodebuild[2784:104027] DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default (DVTEnableCoreDevice=disabled)
** BUILD FAILED **

I don't know what this means. Target iPhone is plugged into mac via USB when I try this b4i-bridge build.
 
Upvote 0

scGuy

Member
Licensed User
This is worth someone double checking me. The error above, after a few hours of searching, I came up with a stackoverflow article for something unrelated that indicated the only reason this error was stopping build was because you had not yet hit "agree" to a long-winded license agreement on https://appstoreconnect.apple.com/

I had not been there yet (just re-activating all of my apple stuff today) and yes it prompted me to agree, so I did, then I restarted my local build server and tried building b4i-bridge again and it worked perfectly. So I think this crazy thing is actually true. The post: StackOverflow article

I'm still a little unclear about how b4i-bridge works. I built it successfully and the IDE told me it had been beamed onto my phone via Configurator, and it was. I opened a brand new "hello world" b4xpages b4i project and ran it (with my phone still plugged into build server via usb) and the new app appeared as "b4i example."

I unplugged my phone. I configured my phone IP address in b4i, and debugging works too. I'm confused though -- I can make changes to the app in IDE, re-run it, and the changes appear on my phone without the build server apparently doing anything at all (no activity in Mac terminal anyway...) how is that happening exactly? And if the build server is needed again (maybe for bigger changes to app) do I have to be plugged in via USB to get those changes onto phone?

Thanks
 
Upvote 0
Top