# Number of app on Ios misunderstood

**URL:** https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017
**Category:** Questions about Thunkable X
**Created:** [February 5, 2022, 10:29am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017 "2022-02-05T10:29:59Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 5, 2022, 10:29am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/1 "2022-02-05T10:29:59Z")

</div>

hi

what I understood is that you can install on an ios device a single application made with Thunkable?

That’s it ?

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 5, 2022, 11:12am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/2 "2022-02-05T11:12:59Z")

</div>

If you are referring to the TestFlight (pre-publish apps) then yes.

If you refer to published apps in the App Store then you can install as many as your device storage would allow.

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 5, 2022, 11:18am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/3 "2022-02-05T11:18:51Z")

</div>

hi

thank you, I am reassured 🙂

one more question if i may

my applications are not of great interest but if someone can decompile an application so easily it can also modify the databases, can’t it?

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 5, 2022, 12:36pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/4 "2022-02-05T12:36:17Z")

</div>

> [@bibbi](#):
>
> modify the databases, can’t it

I’m not sure what you mean by this.

Your app will have the Firebase API key and Database URL. If you have **rules** in place to allow only authenticated users then even having these two pieces of information will not allow the invader to have access to app data.

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 5, 2022, 12:53pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/5 "2022-02-05T12:53:39Z")

</div>

I will think about my concerns and I will finally come back to you on this great forum, no doubt in another post.

thanks

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 6, 2022, 1:19am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/6 "2022-02-06T01:19:30Z")

</div>

Hello @bibbi  
I was thinking again about your concerns and I think if you follow this example  
[https://x.thunkable.com/projectPage/619e8d851d818001049945c2](https://x.thunkable.com/projectPage/619e8d851d818001049945c2)  
which will allow you to login a user without the need to use the `Sign In` component and therefore you will not need to store the API key and Database URL.

You might say that it will not change anything because you are already using the API key and Database URL in the code. Will this is correct but if you use GAS (Google Apps Script) to execute the function and pass the **userID** and **token** to Thunkable then you can safely hide these details from anyone decompiling your project.

The drawback of this suggestion is that you will need to execute `Web API` URL every time you want to get data from your database.

The URL to retrieve data will be in the following structure

```auto
https://<DATABASE_NAME>.firebaseio.com/users/name.json?access_token=<ACCESS_TOKEN>

```

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 6, 2022, 6:06am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/8 "2022-02-06T06:06:58Z")

</div>

hi

I think I understood your suggestion you mention data recovery but that brings other questions to my beginner’s mind what about data changed event, token management ?

thank you for this new development even if it calls into question my future as a low coder

what you are suggesting is a start of code obfuscation but can’t we do the same without using web api ?

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 6, 2022, 6:40am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/9 "2022-02-06T06:40:26Z")

</div>

> [@bibbi](#):
>
> what about data changed event, token management ?

Token management is the heart of the solution and once the user successfully logs in you will get

- session token
- refresh token
- user ID
- time the token is valid

You can do a lot with these info.

You can use the GET `Web API` in a `Timer` to check the data simulating **Data Changed Event**.

> [@bibbi](#):
>
> can’t we do the same without using web api ?

You will need the `Web API` to talk to your GAS deployed script and to talk the firebase.

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 6, 2022, 9:19am UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/10 "2022-02-06T09:19:37Z")

</div>

hi

I tried your template with my api key it works  
I reproduced the blocks in my application it does not work  
I added in my app the api key variable  
the blocks here:

 ![Capture d’écran 2022-02-06 à 10.22.16](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/f/1/f191ade07777986145317388953b32e907f3dc76.png)

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 6, 2022, 12:23pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/11 "2022-02-06T12:23:48Z")

</div>

> [@bibbi](#):
>
> I reproduced the blocks in my application it does not work

What error did you get?

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 6, 2022, 3:07pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/12 "2022-02-06T15:07:53Z")

</div>

I don’t get any error code. weird  
I need to take a closer look at my blocks

update:  
I used another label to check and it works I wouldn’t look for why

thanks

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 6, 2022, 5:20pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/13 "2022-02-06T17:20:07Z")

</div>

> [@bibbi](#):
>
> and it works

Glad it is working for you.

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 6, 2022, 5:24pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/14 "2022-02-06T17:24:45Z")

</div>

I still looked for why.  
the layout was badly designed 😕 that the label disappeared when I entered the data (too many columns or rows and poorly managed sizes)  
I redid the layout

---

<div class="post-metadata">

### Author: ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)
#### Post date: [February 6, 2022, 5:28pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/15 "2022-02-06T17:28:26Z")

</div>

> [@bibbi](#):
>
> that the label disappeared when I entered the data

This is a long standing issue and the only workaround is to set the screen or the columns to scrollable so that components **shift up** when the keyboard appears.

---

<div class="post-metadata">

### Author: ![bibbi](https://avatars.discourse-cdn.com/v4/letter/b/db5fbb/32.png) [@bibbi](https://community.thunkable.com/u/bibbi)
#### Post date: [February 6, 2022, 5:31pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/16 "2022-02-06T17:31:47Z")

</div>

a big thank-you

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/0/f/0f59f292712368bce16ff80133ae10de8a6f27e8.png) [@system](https://community.thunkable.com/u/system)
#### Post date: [May 7, 2022, 5:32pm UTC](https://community.thunkable.com/t/number-of-app-on-ios-misunderstood/1717017/17 "2022-05-07T17:32:03Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
