Good strategy to build an dichotomous key app


Hi! I need to develop an app of identification of certain types of animal, through a dichotomous key. So, i need to make a lot of screens but after some number the app freezes. How could i do to use less screens? Substitution of images is very confusing because the app contains a lot of images. How could be a good strategy?


see tip 1 here


Trying to push the limits! Snippets, Tutorials and Extensions from Pura Vida Apps by Taifun.


@Silvio_Alvim, you need to learn about some basics to work with AB. See here AppyBuilder Beginner Tutorials


Hi, thank you for your tip. I already know basic concepts, i’m a regular user of AppInventor. I wish to know how is the “best approach” (if that exists) to solve my problem. I’m going to revisit some tutorials, for enlightment.


I have a lot of images (about 50 KB each) to store in application. Maybe be better if i host that images in a cloud… is a pity because i’ve had imagined this app could working offline. How is the storage limit in AppyBuilder?


@Silvio_Alvim App design is very important. If you give us some details about your app, we may be able to help you with a design that will reduce number of screens / components.


I still don’t understand why do you need a lot of screens for showing a lot of images app. If your images are interactive, you can use canvas or wwbview.

Appybuilder has build limit 10 Mb, but if you need more you can use Taifun’s file-by-file tutorial to download them after installation, so that they can be accessed offline, or Appybuilder FTP component.


Ok, is a dichotomous key, like a binary tree, where a user have to made one choice between 2 images. After his choose, other 2 images is show, and he make another choice, and so on. At the end, a certain specie of shark is presented, based on characteristics of prior choosen images. The entire path maybe have 15 steps or more. I think one screen for each step is impossible, because, if you count all the alternatives, you have more than 100. If we made a strategy to turn visible true/false images, still remains a problem - a lot of images. I will really apreciate a advice


I’ll read about this “FileByFile”, thank you!


The solution to your problem is not not about a lot of hidden/visible components. What you have to do is to replace one component’s image depending on what the user choose.
Just one image component, at most two, that’s it. Then you need to code a procedure that changes the images being shown for the next one. Even if AppyBuilder allowed for more than 10 screens without memory problems, that wouldn’t be the optimal programming of what you want to do.


Do you want to set custom positions and line tree for the images?

I think the alternatives would be

  1. Using canvas, and calculate positions image sprites and line sprites in each set.
  2. Using a javascript in a webview
  3. Create a custom extension.


@Silvio_Alvim @Italo is correct. You don’t really need a lot odd screens. You should be able to handle this work couple of image components. Just keep reusing same image components, and just keep changing their pictures


you must create lists, list with filenames, lists with names of yhe animals or wathever, and make relations with their list indexes.


Yes, i’ve been thinking in this way too. You think is a problem to upload 200 images to appybulider project? Or the download at first usage is a better approach?


@Silvio_Alvim download on initialapp usage. You can use FtpManager to download


@Silvio_Alvim Were you able to use FtpManger or File-by-file?


Not yet. Could you send me some examples of usage?


@Silvio_Alvim See if .aia in theread below helps: