Skip to main content

Android Development | Part 2 Architecture of the app

After learning basics of android framework about activities, fragments and its states, we decided to create first version of an app. It consisted of several activities which were designed to communicate with each other (e.g. sending ids or string names of chosen items). As it turned out, there is no need of creating separate activity, especially for a simple app like planner. Moreover, switching between two activities is longer than two fragments. More detailed debate activities vs fragments described in this StackOverflow question. Thus, it was decided to leave ourselves with one activity (basically "main activity") and several fragments for each page(e.g. home screen with rooms, room fragment, addItem and AddRoom fragments). Along with fragments it was suggested to add view adapters to accommodate standard android LinearLayout and GridLayout Views, thus creating the following hierarchy:
In both cases(fragment-fragment, activity-activity, or activity-fragment, even activity-viewadapter) communication can be done via following procedures: To send some info via Intent from one :
String YOUR_KEY = "id";

Intent intent = new Intent(getApplicationContext(), DisplayContact.class);

intent.putExtra(YOUR_KEY, id);

startActivity(intent);


Or via Bundle:
Bundle dataBundle = new Bundle();

dataBundle.putInt(YOUR_KEY, id);

intent.putExtras(dataBundle);


And from the other end (on receiving side). Via intent:
int defaultValue = 0;

int id = getIntent().getIntExtra(YOUR_KEY, defaultValue);

Via bundle:
Bundle extras = getIntent().getExtras();

int id = extras.getInt(YOUR_KEY);

Comments

Popular posts from this blog

Machine Learning. Part II.

Non-residential building occupancy modeling. Part II. Occupancy classification So dataset was taken from this place . The dataset comprised of different sources: surveys, data logging from sensors, weather, environment variables. Total feature list consist of 118 features and can be grouped as general (occupancy, time), environment (indoor, outdoor), personal characteristics (age, office type, accepted sensation range etc), comfort/productivity/satisfaction, behavior (clothing, window, interaction with thermostat etc ), personal values (choices on different set points). It contains data on 24 occupants whether it private office or joint one, the first task is to implement binary classification of each occupant using some input data from sensors and time. For rapid protoyping I will use python Tensor Flow wrapper Keras along Anaconda framework. First, loading all required libraries from keras.models import Sequential from keras.layers import Dense import numpy ...

Machine Learning

Machine Learning. Non-residential building occupancy modeling. Part I. Idea : providing occupancy driven energy efficiency model. Since about 40% of building energy goes to HVAC(heating, ventilation and air conditioning) it is quite good idea to use these equipment when it is really required,e.g. switch on the air conditioner or ventilation when people in a room The study discusses approaches towards optimizing energy consumption of commercial buildings. Such task is considered to be a part of more broad topics, e.g. smart buildings, green buildings. During the past years, the number of papers dedicated to energy efficiency optimization in buildings has been growing which confirms societal concern about finding the most efficient methods of improving energy usage by buildings. To maximize building’s energy efficiency various methods are known and can be split into re-organizational advances and strengthening currently employed management systems [1], [2]. This methods incl...

Application of Reinforcement Learning in HVAC systems. Part 2

So, how to model an office building to simulate the work of our controller? In short, I have used the following list of programs: Matlab, EnergyPlus and MLE+ in tandem. First things first, EnergyPlus - is an building simulation engine that will allow you to modulate maybe not all but most of the physical phenomena running inside real physical structures, including heat transfer and temperature spread. Even though it is a quite a hard to understand how to use EnergyPlus if you are not expert (maybe even for civil engineers), you can always download already designed models of a buildings like I did), which can be found on energy.gov site. Therefore, I took one floor three office medium building EnergyPlus model that comes with and .idf and weather files. Basically, the building has three rooms with electric radiant heating floors and one window and some ventilation system. Simple schematics shown on a picture below: As you may guess, I want to be able to test some controllers on th...