Native mobile app

Double-click the background of the page you want to be a mobile app, and towards the top (underneath where you name your page) you’ll see a checkbox that allows to specify that the page is a native app.

I’m finishing up my own native app at the moment. Right now, the features are limited (to my knowledge, no GPS or push notifications, but you can access camera/photos if your users go to upload one) but Bubble is going to have a big mobile rollout in the near future with new features.

Check out these other forum posts as well:


How can I navigate to a new screen for a native app, it shows an issue ‘Change page action should not be used in a native app page’

As in the linked post above, you create a Group per “page”. And then have a Custom State for “Current Page”. On each group you have a Condition that hides / shows the group depending on the Customer State.

1 Like

Thanks Nigel.

I am looking for a way to geo code an address, can anybody suggest.

Also how do I add a standard menu control for a mobile app which is typically found on the top left top corner on the status bar to slide in menu options on the screen

Nigel, which link post are you talking about?

Hi there,

This one here has plenty of detail on the mobile app and hiding groups.

Geocoding - If you mean how to turn an address into a Lat/Long … “It just works” :smile: Have an input with type address, then save on the database. It will save the Lat/Long for you, so you can show on a map etc. Be aware that the GPS doesn’t show in the “Data View” but you can pull it out easily should you need.

The “hamburger” menu control is a plugin. It is called “Slideable Menu”.

You add the options to the control. And then handle each option in a Workflow Action.

1 Like

@natedogg What’s up Nate…

For your native app, what width did you use?


@TobyCargo Best width options would probably be either 320 or 640. I went with 640 myself. If you use the Slidebar Menu though, it seems like it was built for a width of 320.

You shouldn’t go wrong with either, though. Your app will auto-adjust to the screen sizes of iPads, etc.

1 Like

Thanks Nate!


I have a question about the native page.
Should it be the index page ?
Or can i create a new page with a specific screen and then make a link to my index page ?
thanks !

No it doesn’t have to be the index page. However, when we send you the zip file, we need to know which page that is, and you can’t change that after (or you need to resubmit to the App Store).

1 Like

Well, will ask you for a new zip file tomorrow :grin:

Both native and hybrid are ways to fulfill the different needs and preferences of users and developers, and none of them can be thought as a perfect solution. They have their strengths and weaknesses and it is up to you to decide which of them fits you better and which one you will use in your application. Java training in chennai

I hope my information will be useful for you: custom mobile app development company can offer all types of mobile apps (also native mobile apps). As well you can find there interesting blog with relevant articles

@natedogg Hey Nate, just wondering if you ended up finishing and publishing your native app. If so, could you share an iTunes link so I can check out the interface?


@georgedimopoulos19 I actually didn’t publish the one that I was working on when I posted in this thread.

I’ve got one that I’m submitting to Apple currently, but it got rejected because of some iPad resolution issues. I’ll post a link once I get it approved.

1 Like

@george_dmop Just got approved by Apple last night! Here’s a link to the first version of my app. (Note, to show any data, you’ll have to manually change your location to Savannah, GA in the app. It’s the only city I have data for currently.)


Awesome man congrats. Checking it out now

@natedogg so cool, congrats! I’m sure you’re thrilled. Now the real work begins, right? ha

Two questions, if you have time for them.

(1) Your app’s “enable location” messaging is sharp! Would you mind walking through how you achieved that? I haven’t figured out what exactly triggers the ios location request, but I’d like to delay that trigger until after I message why the app needs location. You’ve done a really nice job with that!

(2) I found that the browser’s google maps location request was being called before the cordova plugin location request. This was resulting in some pretty nasty messaging. Below is an example screenshot I took from a different message board.

Did you encounter the same issue? Did you need to adjust the phonegap/cordova index.html file that was initially provided by Team Bubble? Rearranging the order of javascript files seems to have fixed the issue for me, but it was done in such a “trial and error” fashion, I’d be curious to hear if you had a similar experience — and if so, how you resolved. In the end, I think I just placed .js files under js/index.js within index.html, one by one until the message went away.

Congratulations again.

@vaughnwibbles Thanks!

So, yeah I definitely encountered that issue. Figuring out how to fix it was a huge headache, as nothing in Phonegap’s documentation or in online forums seemed to help.

The reason you get the ugly location request is that your Bubble web page is calling for a location before the native app itself is finished loading. When that happens, it overrides your app’s location feature and uses the webview browser’s location feature. That’s why you get the ugly request, which is actually the file path of your app page.

What eventually worked for me was to disable everything in my app that called for a location until I was ready to request it. Every location-based item in my app has a custom state as the default value, and I only assign values to those states once the user presses the button to enable location. Once the button is pressed, I change a value on the current user that activates the location requests.

Once you’ve done this, you should only get the one “nice” location popup, because the native app is fully loaded, and it will override the browser’s request.

Hope that helps. Good luck with your app, and feel free to reach out with any more questions!