# Part .01 miroslav.binas@tuke.sk / [**SMART**](https://kurzy.kpi.fei.tuke.sk/smart)
![Mirek](images/mirek.jpg)
## http://it4kt.cnl.sk/c/smart
## http://www.sli.do#ki-smart
## https://join.slack.com/t/ki-smart/signup
## The Rules
## Hackaton
A hackathon (also known as a hack day, hackfest or codefest) is an event in which computer programmers and others involved in sw and hw development, including graphic designers, interface designers and project managers, collaborate intensively on software projects.
AT&T Hackathon - 26.-27.oct.2018

T-Systems Coder Fest 17.oct.2018
## Smart Apps Development
## The 3 Types of Mobile Experiences

Native Apps

Mobile Websites

Hybrid Apps

## 2016 ![type of developers](../2017/images/what.platforms.do.you.develop.mobile.apps.for.png)
## 2015 ![device platforms](../2017/images/question.2-device.platforms.png)
![programming language](../2017/images/question.3-programming.language.png)
![android logo](../images/logo-android.png) ## Android Overview
![android is open source](../images/android.is.open.source.png) Source: [twitter.com](https://twitter.com/Arubin/status/27808662429)
## Target Android Devices * Phone and Tablet * Wear * TV * Android Auto * Android Things * (Glass)

Java SE

- AWT/Swing

+ Android API

---------------

Android Java

## [Kotlin](https://kotlinlang.org/)
Data collected during a 7-day period

Source: developer.android.com

## [Android Major Versions](https://www.bidouille.org/misc/androidcharts)
## Example: Torch App

Turn On
![Android Marshmallow](../images/logo-marshmallow.png) ## Android Marshmallow (Android 6.0, API Level 23)
## no ```main()``` method as app entry point
## Activity
## Android Application Overview ![android application overview](../2017/images/android.application.overview.png)
## LogCat > Logcat is a command-line tool that dumps a log of system messages, including stack traces when the device throws an error and messages that you have written from your app with the `Log` class. > > -- [developer.android.com](https://developer.android.com/studio/command-line/logcat.html)
## Log ```java // A good convention is to declare a TAG constant in your class private static final String TAG = "MainActivity"; // usage Log.i(TAG, "Application has been started.");```
## Log Levels 1. `VERBOSE` - `Log.v()` 2. `DEBUG` - `Log.d()` 3. `INFO` - `Log.i()` 4. `WARN` - `Log.w()` 5. `ERROR` - `Log.e()` 6. `What a Terrible Failure` - `Log.wtf()`
## Toasts ![Toast Example](http://developer.android.com/images/toast.png "Toast Example")
## Toast Example ```java Toast.makeText( context, "Flashlight is not supported.", Toast.LENGTH_SHORT).show(); ```
## Questions?