What do you mean by control? What do you want to do with the ESP32?
To monitor BLE with the ESP32 and see your ESP32 BLE devices information, you can use “nRF Connect” App by Nordic. But that doesn’t allow you to control it.
Many people use the Blynk app and are happy with that.
To be honest, I don’t have much experience with the Blynk app, and I’m not very familiar with it. But, there are many tutorials online about that subject.
We have some projects using MIT APP inventor. In MIT App Inventor you can create your own app using code blocks. Previously, MIT APP inventor was only compatible with Android devices. Now, it seems to also support IOS. But I haven’t experimented MIT APP inventor with IOS. So, I’m not sure if there are any differences when compared to building Android applications.