 Hi everyone. I'm Milero. I'm a front-end developer. I work with the Android team, and I'm part of the ones that are behind the Android Settings Web App. And well, I hope you enjoyed this session. Something that I would like us to learn or maybe know at the end of this session is how to navigate through the Android Settings Web App. Create some configurations related to synchronization, general appearance settings, but also learn how to find these configurations in your device, in your Android device. Understand which roles can use this app and what are the difference between these roles. Run user sync test and know how to add the web app to the server in case you feel like trying or kind of playing with the web app. So let's start with, what if the Android Settings Web App? Well, the web app will allow us to create configurations defining data, metadata, and the Android app that the Android app will use for synchronize. Also, you can run test for users. I want to talk about later about this test. You can also customize the appearance of the screens that you have in your device, in the Android app. But also you can create analytics and visualizations. And all these parameters will be saved on the data store. Which roles can use the Android Settings Web App? Well, please note that only users with all authorities, and I'm going to say it again, this thing, all authorities are able to define configurations or parameters in the Android Settings Web App. Other users or users that does not have all authorities will have access to the Android Settings Web App, but only in a view mode. Which means that you can view what are the settings that are configured, but you cannot edit them. So, for example, a user with all authorities can do the first time setup. The first time setup is when you save all the default values that you need when you want to use the Settings Web App. But also, if you have all authorities, you can go through general synchronization, appearance, and analytics settings, and you can create and delete these settings. Otherwise, if your user does not have all the authorities, then you cannot do the first time setup, and you can only have access only in view mode. And for the synchronization settings, it has a subsection that is called User Sync Test, and only for User Sync Test, it doesn't matter which kind of user you are logging, because you can run or try this section. So, what is the difference? So, for example, this is an example of how one of the sections in the Android Settings Web App. So, we can see that if the user that I'm logging has all authorities, then I can select or check in this checkbox, I can, if you find a text field, I can put information there. I can click on the buttons that said edit, delete. I can add or that means create more settings. I can reset all values to default, that means to remove all the, to go back to the default values. And also, if I'm changing the parameter, then the save button will be enabled. But what happened if I have, if I'm logging with a regular user or a user that does not have all authorities, then this is how it will look. It's the same, it's the same section, but it has an issue with the same information, but I cannot be able to, but all the things like buttons, fields, checkbox, select options will be disabled. And that's for the academic purpose. If you're using your, I mean, user, you will find the Android Settings Web App, but only you will find everything in this, like this screen. You can only use it as a view mode. Again, this is only for the academic purposes. So don't worry if you cannot create or delete or delete because it's only your user has only access as view modes. So now let's talk about the settings. The first kind of settings that we have access or that we can create in the Android Settings Web App is the general. So general settings means includes configurations such as SMS configuration, analytics and multiple, we serve with values and encrypt device, the database of your device. I'm going to talk a little bit of what means encrypt device because this is a critical action. So when you decide to click on, to check this, this box, what you're doing is that what you do will affect the local database. So we have database in our devices. But also we have database, you know, we have two database, right, one in our devices, when it's related to our devices, and when it's related to our servers, the DHS2 servers. When we talk about this setting of encrypt device database, we only talk about the device one. So will affect the local database of all Android devices synchronized with the server, but it will not affect the database that is related to the server. My sound confused, but again, this only affects to the device or the devices that will be synchronized. By default, the encrypt option is your database is not encrypted, but a user with all authorities can check this option. At that point, if you save the, if this user save the configuration, then after syncing, it will affect the devices. Encrypting the database will have impacts on database volume and performance of the Android app. And also it's important to know that by selecting or unselecting this option, there will be no data lost, even if you haven't synchronized the server. So just to remember that it's very important to know that this is a critical option, always be aware before checking this option. Let's continue. So as I said at the beginning, what I want to do, I want us to learn in this session is not only create settings, but also where to find these settings on your device. So for general settings, I mentioned that we have reserved value and also SMS settings. These two settings we can find in our devices. So if we open our device and we go to the settings section, we will find a lot of different parameters or settings. But if we go to reserved values, then we can check that are the same values that we put it on the Android settings web app. So I put it 90 reserved values and we can find here 90 reserved values because we feel these settings, these values. Also, we can find SMS configuration again in we go to settings and under settings, we will find SMS settings and SMS gateway and result, sorry, result, sender, number are the same ones that we can that we configure in the settings web app. So now let's move on to the next kind of settings that we have access to. So synchronization. What synchronization means? What we can find here is basically synchronization parameters. We have four subsections here. We have global synchronization, data sets, programs, user scene test. Let's start with global. The global settings are basically configurations such as how often we want to synchronize our metadata and data. Again, this kind of configuration can be found in the settings of your Android app. So in this case, I left this configuration as the full values that are basically one day for metadata, one day for data. Metadata here will in your device, your Android device is found as scene configuration. So it's a syncing period is one day, one day for metadata and how often should data sync data is for one day. Again, syncing data one day. I'm just trying to show you that some of these configurations can be found in your device. So we can navigate through both of them. So a good reminder is that the parameters that we create on this Android settings web app will overwrite the settings that you will find in your Android device. So the next one is program settings. So I'm going to go to the server. So this is the Android settings web app, as I show you the general synchronization now programs. Before talking about the this specific section, I want you to know that through the Android settings web app, you will find a very similar kind of configure layout, let's say like that. So when you find this division that has or a section that that gives you global and specific settings, it will probably work very similar. So what which mean is that when you configure something in this section, you have you can configure in two ways. One configure and something or setting set setting some configuration or some parameters for all the programs or datasets that the Android user has access to. Which means when you are if you create something in the global section, it will apply to all the all the other programs or datasets. But if you decide to create a very specific configuration, for example, you want something very different for a specific program or a specific data set that you can create it in the other part of the section. That is the specific one. This configuration will only apply to the to the program or the dataset that you are creating you're adding here. And this will work for all the sections that have this this kind of layouts, global and specific settings. So now I'm going going back to what means what we can do in the program, the synchronization program settings is again we can have we find here some a global configuration or global settings. What we can do here is basically apply some parameters or give or give some parameters as maximum TI downloads maximum events to download the dates that we want to use for download. These are parameters or limits that we can we can give so we can know how much we can know how much to restrict how much we can we want to synchronize. Also, we can decide if we want these these kind of parameters to be applied globally or to per program or per unit. For program in case we want to talk we want to create now in a specific setting then we can do it like this. So it's basically the same settings that we have here. But that are applied but that will be applied only for a specific for a specific program. So going here we click on add program then we select the program that we want. Let's say Malera case we decide which what kind of configuration we want to add it so let's say I don't want 500 I want 550 I can also decide to give it zero like I don't want anything to be download for the Malera case. We have the same options that I found here in the global section so involvement dates last three months and after clicking on save program now we see that the save button also has been enabled we can click on save and after clicking on save this configuration it's going to be ready to be synchronized on your device and you will find this information also in your device. There are some difference of what kind of settings that you will you'll you'll find on your device. Here so it will this information will depend on the kind of program that you are choosing. So for example for Malaria case we found information but for let's say information campaign the kind of info the kind of settings or parameters that we can add are more related to events. So it depends if the program that we are choosing it's tracker or event program sorry here but as I said where we can the kind of configuration that we create in for program settings can also be found in our devices. The parameters that we created in the case for global in the global case can be found in the settings sections and there is sync parameters here we can find that it sets events 666 but next to it it sets 1000 because that's the limit that we are that's the parameter of the limit of how much we want us to be download. So it doesn't for the case of events for the case of TI we put it 450 and which means is that we we might not have that kind of like let's say 1000 events or 450 TI's but we can also have more than that but we are putting some parameters or some limit to how much we want to download. So as we can say is the same the same number is that we put it on the global the global settings the global program settings are the same that can be found in your device but also you you can see here there's another another mini section that is part of the sync parameters and as I said we created not only global we can not only create global settings we can also create a specific settings so this is how we create the specific settings and after creating a specific setting and also synchronizing your device to make sure that you have the more the most recent information you can also find here for example I create two one is for child program and the other one is for Internet care and these two appear here so again settings we go to sync parameters and it here says there are two programs with a specific settings these two programs are again antenatal and child program and both of them have the same amount of of events and TI's that we have put it on the under settings for that well we can save it here if we click save now it's safe on the on the data store data sets data sets work very similar to the programs as we can see again we have global and a specific setting but the difference between the previous section is that here we only have access we can only create configuration related to the maximum the maximum number of periods we want to download so for this instance I put a 10 10 periods to be downloaded for the specific set specific setting for the specific setting for the specific setting set a specific setting. It's very similar to the previous one. Click on add a data set. You can choose the data set that we want to create. Let's say this one. And as you can say, as you can see some a default value is going to appear. And this default value is related to the type of period that this data set has. So this data set has a yearly period. But the other one, like the one that it's already created, has a monthly period. So the default number of periods will change depending on that. So the next section is users in test. Right. So users in test, as I said at the beginning, is the only section that it doesn't matter if you have, if you're a login way, a user that has all authorities or doesn't have all authorities, you can use this section. And you can try it here. So what you can find here is what we do here is basically we select a user. So let's, that's on my, also it doesn't matter, you can run this test, even if you're not with users that you are not currently logging. So for example, now with this DWP user, but I want to try a test with this user, for example. So I search the user, I click on run test, and it's running some tests. And the information that this test will give me, it's information related to how many org units this user has access to, data sets, programs, programs related to the org units that this user has access to, but also metadata and data download sites. So we can have a number of how much this, like how much this user will probably download. So it doesn't, a number that to happen as a reference, if you're, in case we want to know, okay, where the user that is, that this user will have enough spacing in the device to, even if this user has all these configurations, just to let us know a little bit of what this user has access to in terms of synchronization. We can also notice that in this section that some of the numbers that appear here are highlighted in red, which means that these values are the maximum or are greater than the maximum recommended value, that we are said, these are values that we are recommending here, just to take it as, take it as something that we are recommending. So now let's move on to appearance, appearance settings. So appearance settings is a section that is focused on the filters, where we can show what can be appeared on the different screens that we have accessed, meaning home, event listing, TI search, and data sets. In appearance we can, we have these filters, we have access to choose these filters, so we can decide if we want to, if we want to show date, organization, unit, sync status assigned to me filters, and we can also find, and in this case I put all these, I enable all these filters, so we can find it here, in this home screen, the same filters, date, organization, unit, and status assigned to me. For program it's very similar to the, to the previous one, to the home, but again we are going to use this layout of global and specific settings. When we talk, and also something interesting about the program appearance settings is that we can not only choose or customize the filters, but we can also decide if we want to show these complete, percentage element, that's what these element does is show us the, the percentage completion in the program toolbar, so we can decide if we want to show, we have the option to, to show it, to decide if we want to show it as globally, like to, so it applies to all the programs, but we can also decide to do it for a specific, for a specific program. Again this is the same, you know the drill, click on that, choose a program, decide what kind of configuration we want to give to this program, save, and then save again. So I'm going to show you, for example, what I did for a program specific. I create two specific configurations for these programs, one for a chat program and one for antenatal care. So for antenatal care, actually I allowed that the, the filters to be shown will be sync status and organization unit, so we can see here a screenshot of the antenatal care. This is how it will look in your device, so you go to antenatal care and you will find in this case, for example, only our unit and sync filters. Datasets works very similar as the previous one, we have only these three filters, we have the period, our unit and sync status, and we can choose which one we want to be shown in the, in the screens. Again this can be applied global and for specific programs. In this case I added, I decided for global settings to only, to only show the period and sync status. I choose, for example, these data sets and it showed me the, the same filters that I, that I put it globally because I didn't create a specific setting for child health. So we are almost finished with the presentation but today I'm not going to talk about, much about analytic settings because tomorrow you'll have a very interesting and a completely, complete session related to this topic but I just wanted to let you know that as part of the under setting web app you can find analytic settings that give us, give us the opportunity to create visualizations for analytics for the TI's that can be, can, can appear in the home program and dataset. Also, these visualizations have very special validations so only after these visualizations are decided that are valid, they, these, you can create these visualizations. Don't worry, you're going to have a whole session related to this topic so I'm not going to talk much about, more about this. I wanted to let you know that we have access to, to this section. As I said at the beginning I want us to know how to install the web app but also if you want to install you can also have the option to not only reset but delete everything that you have in the under web app. So let's start with delete. As part of the settings that you can, that we find in general settings in the under settings with web app is we can find the disable all settings that it's a button that what basically do is that remove everything and I'm going to say it again it's everything. So if we, again, be careful if you decided to do, if you're doing it because it's going to remove everything that it's, it's like removing everything that you have created and you will end up with, like if it was the first time you are using the, the, the settings web app. So again if you, so if you decide to for some reason disable all your settings and remove everything that you have created you have also the option to create, to run the first time setup. As I said at the beginning the first time setup it's only, it's a thing that only users with all the authorities can do. Also if you're disabled it's also part of the things that you can do only if you have all the authorities. But when you do the first time setup this, this message will pop up and only if you click on set the false and save you will, what you will have is all the default values that are needed to run the under settings web app will be set and after that you can again start creating all the settings that you want. So what you'd need now that we have gone through most of the under settings web app and their and the configurations that we can create there you feel if you feel like trying it I actually encourage you to try it. And you feel like and you want to install it so you can find the under settings web app in the app in the app hub and to do it to do it you need to do to go to app management. The app management is an app that has that provide us with all the apps that are part of the app hub or the app store. We click on app hub or app store depending on the version that you have. Then we need to search under settings under settings and if you click on under settings all the list of all the versions that we have will be will appear. I recommend you to use the latest one that is the one that we are using in this session and also that one that it's already installed in the in the server in the academy server and then click install and after you click install the icon of the under settings web app will appear in your as part of the the apps that you have access in your server. I'm almost finishing so I just want you to know that we might not always have all the answers to your dApps but we are always here to try to find them to find an option or some more information to help. While doing so I encourage you to also read or review what we can find in the under settings documentation or under documentation but also in the community of practice. It's also a good idea to connect with other people that are using the all our tools. With this I think I'm finished with the session. Now I'm going to show you what we're going to do for the exercise. Also very open to feedback to help in whatever way I can help. Here the exercise I'm going to show you. As I said it was part of what I wanted us to do during this session was learn how to navigate through the under settings web app but also how to do it to find these settings in our devices. So our first exercise is going so what we are doing in both exercises is actually taking screenshots one related one that is that comes from the under settings web app and the other one that will come from your device. As I said during the presentation if you log in to the academy server with your admin user you will find the under settings web app as part of the apps that you have access to but when you get into the when you open the web app you will only find the settings in a view mode so you will not be able to create edit or delete any kind of settings but don't worry because these exercises are not related to create or edit these settings you only need them to you only need the view access for these for this exercise. So the first one the first exercise is taking two screenshots so we have what I was talking about the some of the configurations I talked about the reserved values that are actually in this under the general settings. So I want I want you to take a screenshot of the of the reserved values that you can that you find that you can find in the in your Android setting web app but also I want you to take a screenshot of what you can of the reserved values that you can find in your device. I think it's something that we can manage to do it. One that comes from the end from the web app and the other one coming from the Android setting and sorry one from the web app the other one coming from the Android app also from your device right. The second exercise it's more related to the programs and the synchronization. So again one screenshot coming from the web app and the other one coming from your device. So as I said during the presentation we can create specific settings coming from the from your program. These these settings can also be found in your device. So if we go to the program settings every student will find probably two at least two two programs and one program it's common to to all the students and the other program it's the program that is specifically assigned to to your user. So you'll find two programs one program it's for everyone and the other one that is for only from your user. I want you to take a screenshot coming from the web app from if you want you can show the the whole screen from program settings if you decided only coming the part of the specific settings and I want you to compare it to where you can find in your device. So again if you go to settings you will find under sync parameters the kind of the same configuration and I want you to take a screenshot also from your device and if you can find that both the program that your program it's there then it will be really good. I think there will be it it's time to try it yourself. First screenshot two coming from the first exercise the other two coming from the second exercise well that'll be it again thank you so much for your time I hope you find very helpful this presentation open for feedback to help with all questions that you have just remember that the word of the day is methodic and that's it thank you so much