Slijede razlike između dviju inačica stranice
Starije izmjene na obje strane Starija izmjena | Novija izmjena Novije izmjene na obje strane | ||
2018:karlo_siladi:projektni_zadatak [2018/06/14 00:54] ksiladi kod android aplikacije |
2018:karlo_siladi:projektni_zadatak [2018/06/14 01:01] ksiladi |
||
---|---|---|---|
Redak 96: | Redak 96: | ||
Za lakše rukovanje sustav je smješten u plastično kućište. Zbog malog dometa RFID čitača isti je postavljen izvan kućišta. Također izvan se nalaze i slušalice. | Za lakše rukovanje sustav je smješten u plastično kućište. Zbog malog dometa RFID čitača isti je postavljen izvan kućišta. Također izvan se nalaze i slušalice. | ||
- | {{:2018:karlo_siladi:kuciste.jpg?nolink&300x400}} | + | {{:2018:karlo_siladi:kuciste.jpg?nolink&300x400|kuciste.jpg}} |
====== Komunikacija s vanjskim sustavima ====== | ====== Komunikacija s vanjskim sustavima ====== | ||
Redak 112: | Redak 112: | ||
===== Android Studio ===== | ===== Android Studio ===== | ||
- | [[https://developer.android.com/studio/|Za izradu Android aplikacije potrebno je instalirati razvojni alat Android Studio. Najnovija verzija trenutno je 3.1.3. a dostupna je za preuzimanje na sljedećoj poveznici: https://developer.android.com/studio/]] . | + | [[https://developer.android.com/studio/|Za izradu Android aplikacije potrebno je instalirati razvojni alat Android Studio. Najnovija verzija trenutno je 3.1.3. a dostupna je za preuzimanje na sljedećoj poveznici: https://developer.android.com/studio/]] . |
<font 12pt/inherit;;blue;;inherit>Detaljne upute za instalaciju razvojnog alata Android Studio</font> | <font 12pt/inherit;;blue;;inherit>Detaljne upute za instalaciju razvojnog alata Android Studio</font> | ||
Redak 120: | Redak 120: | ||
==== Kreiranje projekta ==== | ==== Kreiranje projekta ==== | ||
- | <font 12pt/inherit;;blue;;inherit>Nakon uspješne instalacije razvojnog alata potrebno je kreirati novi Android projekt. Kod stvaranja projekta potrebno je unijeti proizvoljno ime projekta. Korišteno ime je CKGE_TMP_i SPVP_projekt CKGE_TMP_i . Stvara se novi direktorij istog imena u kojeg se spremaju programski kodovi, biblioteke te resursi potrebni za aplikaciju. Nakon toga potrebno je unijeti verziju platforme za koju se projekt izrađuje. Odabrana je verzija CKGE_TMP_i API: 19 Android 4.4 (KitKat) CKGE_TMP_i što je relativno stara verzija Android operacijskog sustava, ali je time omogućeno da se aplikacija može pokretati na većini mobilnih uređaja jer je pokretanje moguće i na svim novijim verzijama Androida.</font> | + | Nakon uspješne instalacije razvojnog alata potrebno je kreirati novi Android projekt. Kod stvaranja projekta potrebno je unijeti proizvoljno ime projekta. Korišteno ime je SPVP_projekt . Stvara se novi direktorij istog imena u kojeg se spremaju programski kodovi, biblioteke te resursi potrebni za aplikaciju. Nakon toga potrebno je unijeti verziju platforme za koju se projekt izrađuje. Odabrana je verzija API: 19 Android 4.4 (KitKat) što je relativno stara verzija Android operacijskog sustava, ali je time omogućeno da se aplikacija može pokretati na većini mobilnih uređaja jer je pokretanje moguće i na svim novijim verzijama Androida. |
- | <font 12.0pt/inherit;;inherit;;inherit>Pri kreiranju novog projekta, stvoren je novi CKGE_TMP_i Activity CKGE_TMP_i koji prikazuje grafičko sučelje koje vidi korisnik pri pokretanju aplikacije. Potrebno je odabrati CKGE_TMP_i Empty Activity CKGE_TMP_i i dodijeliti mu naziv CKGE_TMP_i MainActivity. CKGE_TMP_i</font> | + | Pri kreiranju novog projekta, stvoren je novi Activity koji prikazuje grafičko sučelje koje vidi korisnik pri pokretanju aplikacije. Potrebno je odabrati Empty Activity i dodijeliti mu naziv MainActivity. |
- | === AndroidManifest.xml === | + | === AndroidManifest.xml === |
- | <font 12pt/inherit;;inherit;;inherit>Kako bi aplikacija ispravno radila potrebno je u datoteku CKGE_TMP_i AndroidManifest.xml CKGE_TMP_i dodati potrebne dozvole za korištenjem CKGE_TMP_i Bluetooth CKGE_TMP_i sučelja.</font> | + | Kako bi aplikacija ispravno radila potrebno je u datoteku CKGE_TMP_i AndroidManifest.xml dodati potrebne dozvole za korištenjem Bluetooth sučelja. |
<font 9pt/inherit;;inherit;;inherit><uses-permission android:name="android.permission.BLUETOOTH" /></font> | <font 9pt/inherit;;inherit;;inherit><uses-permission android:name="android.permission.BLUETOOTH" /></font> | ||
Redak 132: | Redak 132: | ||
<font 9pt/inherit;;inherit;;inherit><uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /></font> | <font 9pt/inherit;;inherit;;inherit><uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /></font> | ||
- | <font 12.0pt/inherit;;inherit;;inherit>Potrebno je i navesti sve CKGE_TMP_i Activity CKGE_TMP_i java razrede koji se koriste u aplikaciji. Korišteni su CKGE_TMP_i MainActivity CKGE_TMP_i , CKGE_TMP_i ProductInfoActivity CKGE_TMP_i i CKGE_TMP_i ProjectAboutActivity. CKGE_TMP_i</font> | + | Potrebno je i navesti sve Activity java razrede koji se koriste u aplikaciji. Korišteni su MainActivity , ProductInfoActivity i ProjectAboutActivity. |
- | <font 12.0pt/inherit;;inherit;;inherit>Oznakom CKGE_TMP_i intent-filter CKGE_TMP_i daje se do znanja Androd OS-u koju Activity treba pokrenuti prilikom pokretanja aplikacije. U manifestu se još navode i korištene ikone.</font> | + | Oznakom intent-filter daje se do znanja Androd OS-u koju Activity treba pokrenuti prilikom pokretanja aplikacije. U manifestu se još navode i korištene ikone. |
- | + | ||
- | <code><font inherit/inherit;;#e8bf6a;;inherit><?</font><font inherit/inherit;;#bababa;;inherit>xml version=</font><font inherit/inherit;;#6a8759;;inherit>"1.0"</font><font inherit/inherit;;#bababa;;inherit>encoding=</font><font inherit/inherit;;#6a8759;;inherit>"utf-8"</font><font inherit/inherit;;#e8bf6a;;inherit>?></font><font inherit/inherit;;#e8bf6a;;inherit><manifest</font><font inherit/inherit;;#bababa;;inherit>xmlns:</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>=</font><font inherit/inherit;;#6a8759;;inherit>"http://schemas.android.com/apk/res/android"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#bababa;;inherit>package=</font><font inherit/inherit;;#6a8759;;inherit>"com.example.karlosiladi.bazapodataka"</font><font inherit/inherit;;#e8bf6a;;inherit>></font><font inherit/inherit;;#e8bf6a;;inherit><uses-permission</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>"android.permission.BLUETOOTH_ADMIN"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit><uses-permission</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>"android.permission.BLUETOOTH"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit><application</font><font inherit/inherit;;#e8bf6a;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:allowBackup=</font><font inherit/inherit;;#6a8759;;inherit>"true"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:icon=</font><font inherit/inherit;;#6a8759;;inherit>"@mipmap/ic_launcher_spvp"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:label=</font><font inherit/inherit;;#6a8759;;inherit>"@string/app_name"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:roundIcon=</font><font inherit/inherit;;#6a8759;;inherit>"@mipmap/ic_launcher_spvp_round"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:supportsRtl=</font><font inherit/inherit;;#6a8759;;inherit>"true"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:theme=</font><font inherit/inherit;;#6a8759;;inherit>"@style/AppTheme"</font><font inherit/inherit;;#e8bf6a;;inherit>></font><font inherit/inherit;;#e8bf6a;;inherit><activity</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>".ProductInfoActivity"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit><activity</font><font inherit/inherit;;#e8bf6a;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>".MainActivity"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:label=</font><font inherit/inherit;;#6a8759;;inherit>"@string/title_activity_main"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:screenOrientation=</font><font inherit/inherit;;#6a8759;;inherit>"landscape"</font><font inherit/inherit;;#6a8759;;inherit></font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:theme=</font><font inherit/inherit;;#6a8759;;inherit>"@style/AppTheme.NoActionBar"</font><font inherit/inherit;;#e8bf6a;;inherit>></font><font inherit/inherit;;#e8bf6a;;inherit><intent-filter></font><font inherit/inherit;;#e8bf6a;;inherit><action</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>"android.intent.action.MAIN"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit><category</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>"android.intent.category.LAUNCHER"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit></intent-filter></font><font inherit/inherit;;#e8bf6a;;inherit></activity></font><font inherit/inherit;;#e8bf6a;;inherit><activity</font><font inherit/inherit;;#9876aa;;inherit>android</font><font inherit/inherit;;#bababa;;inherit>:name=</font><font inherit/inherit;;#6a8759;;inherit>".ProjectAboutActivity"</font><font inherit/inherit;;#e8bf6a;;inherit>/></font><font inherit/inherit;;#e8bf6a;;inherit></application></font><font inherit/inherit;;#e8bf6a;;inherit></manifest></font></code> | + | |
=== Struktura proizvoda === | === Struktura proizvoda === | ||
- | <code><font inherit/inherit;;#cc7832;;inherit>public class</font>Products { | + | <code> |
- | <font inherit/inherit;;#bbb529;;inherit>@NonNull</font><font inherit/inherit;;#bbb529;;inherit>@PrimaryKey</font><font inherit/inherit;;#bbb529;;inherit></font><font inherit/inherit;;#cc7832;;inherit>private</font>String <font inherit/inherit;;#9876aa;;inherit>productId</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>private</font>String <font inherit/inherit;;#9876aa;;inherit>productName</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>private</font>String <font inherit/inherit;;#9876aa;;inherit>productPrice</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>public</font><font inherit/inherit;;#ffc66d;;inherit>Products</font>() { | + | <?xml version="1.0" encoding="utf-8"?> |
- | } | + | <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
- | <font inherit/inherit;;#cc7832;;inherit>public</font>String <font inherit/inherit;;#ffc66d;;inherit>getProductId</font>() { <font inherit/inherit;;#cc7832;;inherit>return</font><font inherit/inherit;;#9876aa;;inherit>productId</font><font inherit/inherit;;#cc7832;;inherit>;</font>} | + | package="com.example.karlosiladi.bazapodataka"> |
- | <font inherit/inherit;;#cc7832;;inherit>public void</font><font inherit/inherit;;#ffc66d;;inherit>setProductId</font>(String productId) { <font inherit/inherit;;#cc7832;;inherit>this</font>.<font inherit/inherit;;#9876aa;;inherit>productId</font>= productId<font inherit/inherit;;#cc7832;;inherit>;</font>} | + | |
- | <font inherit/inherit;;#cc7832;;inherit>public</font>String <font inherit/inherit;;#ffc66d;;inherit>getProductName</font>() { <font inherit/inherit;;#cc7832;;inherit>return</font><font inherit/inherit;;#9876aa;;inherit>productName</font><font inherit/inherit;;#cc7832;;inherit>;</font>} | + | |
- | <font inherit/inherit;;#cc7832;;inherit>public void</font><font inherit/inherit;;#ffc66d;;inherit>setProductName</font>(String productName) { <font inherit/inherit;;#cc7832;;inherit>this</font>.<font inherit/inherit;;#9876aa;;inherit>productName</font>= productName<font inherit/inherit;;#cc7832;;inherit>;</font>} | + | |
- | <font inherit/inherit;;#cc7832;;inherit>public</font>String <font inherit/inherit;;#ffc66d;;inherit>getProductPrice</font>() { <font inherit/inherit;;#cc7832;;inherit>return</font><font inherit/inherit;;#9876aa;;inherit>productPrice</font><font inherit/inherit;;#cc7832;;inherit>;</font>} | + | |
- | <font inherit/inherit;;#cc7832;;inherit>public void</font><font inherit/inherit;;#ffc66d;;inherit>setProductPrice</font>(String productPrice) {<font inherit/inherit;;#cc7832;;inherit>this</font>.<font inherit/inherit;;#9876aa;;inherit>productPrice</font>= productPrice<font inherit/inherit;;#cc7832;;inherit>;</font>} | + | |
- | } | + | <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> |
+ | <uses-permission android:name="android.permission.BLUETOOTH" /> | ||
+ | |||
+ | <application | ||
+ | android:allowBackup="true" | ||
+ | android:icon="@mipmap/ic_launcher_spvp" | ||
+ | android:label="@string/app_name" | ||
+ | android:roundIcon="@mipmap/ic_launcher_spvp_round" | ||
+ | android:supportsRtl="true" | ||
+ | android:theme="@style/AppTheme"> | ||
+ | <activity android:name=".ProductInfoActivity" /> | ||
+ | <activity | ||
+ | android:name=".MainActivity" | ||
+ | android:label="@string/title_activity_main" | ||
+ | android:screenOrientation="landscape" | ||
+ | android:theme="@style/AppTheme.NoActionBar"> | ||
+ | <intent-filter> | ||
+ | <action android:name="android.intent.action.MAIN" /> | ||
+ | <category android:name="android.intent.category.LAUNCHER" /> | ||
+ | </intent-filter> | ||
+ | </activity> | ||
+ | <activity android:name=".ProjectAboutActivity" /> | ||
+ | </application> | ||
+ | |||
+ | </manifest> | ||
</code> | </code> | ||
=== Baza podataka === | === Baza podataka === | ||
- | <code><font inherit/inherit;;#bbb529;;inherit>@Database</font>(<font inherit/inherit;;#d0d0ff;;inherit>entities</font>= {Products.<font inherit/inherit;;#cc7832;;inherit>class</font>}<font inherit/inherit;;#cc7832;;inherit>,</font><font inherit/inherit;;#d0d0ff;;inherit>version</font>= <font inherit/inherit;;#6897bb;;inherit>1</font><font inherit/inherit;;#cc7832;;inherit>,</font><font inherit/inherit;;#d0d0ff;;inherit>exportSchema</font>= <font inherit/inherit;;#cc7832;;inherit>false</font>) | ||
- | <font inherit/inherit;;#cc7832;;inherit>public abstract class</font>ProductDatabase <font inherit/inherit;;#cc7832;;inherit>extends</font>RoomDatabase { | ||
- | <font inherit/inherit;;#cc7832;;inherit>private static final</font>String <font inherit/inherit;;#9876aafont-style:italic;;;inherit>DATABASE_NAME</font>= <font inherit/inherit;;#6a8759;;inherit>"products_db"</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>private static</font>ProductDatabase <font inherit/inherit;;#9876aafont-style:italic;;;inherit>INSTANCE</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>public abstract</font>DaoAccess <font inherit/inherit;;#ffc66d;;inherit>daoAccess</font>() <font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>public static</font>ProductDatabase <font inherit/inherit;;#ffc66d;;inherit>getProductDatabase</font>(Context context) { | ||
- | <font inherit/inherit;;#cc7832;;inherit>if</font>(<font inherit/inherit;;#9876aafont-style:italic;;;inherit>INSTANCE</font>== <font inherit/inherit;;#cc7832;;inherit>null</font>) { | ||
- | <font inherit/inherit;;#9876aafont-style:italic;;;inherit>INSTANCE</font>= | ||
- | Room.<font inherit/inherit;;inherit;;inherit>databaseBuilder</font>(context.getApplicationContext()<font inherit/inherit;;#cc7832;;inherit>,</font>ProductDatabase.<font inherit/inherit;;#cc7832;;inherit>class,</font><font inherit/inherit;;#9876aafont-style:italic;;;inherit>DATABASE_NAME</font>) | ||
- | .allowMainThreadQueries() | ||
- | .build()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | <font inherit/inherit;;#cc7832;;inherit>return</font><font inherit/inherit;;#9876aafont-style:italic;;;inherit>INSTANCE</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | <font inherit/inherit;;#cc7832;;inherit>public static void</font><font inherit/inherit;;#ffc66d;;inherit>destroyInstance</font>() { | ||
- | <font inherit/inherit;;#9876aafont-style:italic;;;inherit>INSTANCE</font>= <font inherit/inherit;;#cc7832;;inherit>null;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | } | ||
- | </code> | ||
=== Sučelje za slanje upita na bazu === | === Sučelje za slanje upita na bazu === | ||
- | <code><font inherit/inherit;;#cc7832;;inherit>public interface</font>DaoAccess { | ||
- | <font inherit/inherit;;#bbb529;;inherit>@Insert</font><font inherit/inherit;;#bbb529;;inherit></font><font inherit/inherit;;#cc7832;;inherit>void</font><font inherit/inherit;;#ffc66d;;inherit>insertSingleProduct</font>(Products product)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#bbb529;;inherit>@Insert</font><font inherit/inherit;;#bbb529;;inherit></font><font inherit/inherit;;#cc7832;;inherit>void</font><font inherit/inherit;;#ffc66d;;inherit>insertMultipleProducts</font>(List<Products> productsList)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#bbb529;;inherit>@Query</font>(<font inherit/inherit;;#6a8759;;inherit>"SELECT * FROM Products WHERE productId = :productId"</font>) | ||
- | Products <font inherit/inherit;;#ffc66d;;inherit>fetchProductByProductId</font>(String productId)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#bbb529;;inherit>@Query</font>(<font inherit/inherit;;#6a8759;;inherit>"SELECT * FROM Products"</font>) | ||
- | List<Products> <font inherit/inherit;;#ffc66d;;inherit>getProducts</font>()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#bbb529;;inherit>@Update</font><font inherit/inherit;;#bbb529;;inherit></font><font inherit/inherit;;#cc7832;;inherit>void</font><font inherit/inherit;;#ffc66d;;inherit>updateProduct</font>(Products product)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#bbb529;;inherit>@Delete</font><font inherit/inherit;;#bbb529;;inherit></font><font inherit/inherit;;#cc7832;;inherit>void</font><font inherit/inherit;;#ffc66d;;inherit>deleteProduct</font>(Products product)<font inherit/inherit;;#cc7832;;inherit>;</font>} | ||
- | </code> | ||
=== Bluetooth handler i reprodukcija zapisa === | === Bluetooth handler i reprodukcija zapisa === | ||
- | |||
- | <code><font inherit/inherit;;#9876aa;;inherit>h</font>= <font inherit/inherit;;#cc7832;;inherit>new</font>Handler() { | ||
- | <font inherit/inherit;;#cc7832;;inherit>public void</font><font inherit/inherit;;#ffc66d;;inherit>handleMessage</font>(android.os.Message msg) { | ||
- | <font inherit/inherit;;#cc7832;;inherit>switch</font>(msg.<font inherit/inherit;;#9876aa;;inherit>what</font>) { | ||
- | <font inherit/inherit;;#cc7832;;inherit>case</font><font inherit/inherit;;#9876aa;;inherit>RECIEVE_MESSAGE</font>: | ||
- | <font inherit/inherit;;#cc7832;;inherit>byte</font>[] readBuf = (<font inherit/inherit;;#cc7832;;inherit>byte</font>[]) msg.<font inherit/inherit;;#9876aa;;inherit>obj</font><font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>String strIncom = <font inherit/inherit;;#cc7832;;inherit>new</font>String(readBuf<font inherit/inherit;;#cc7832;;inherit>,</font><font inherit/inherit;;#6897bb;;inherit>0</font><font inherit/inherit;;#cc7832;;inherit>,</font>msg.<font inherit/inherit;;#9876aa;;inherit>arg1</font>)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>sb</font>.append(strIncom)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>int</font>endOfLineIndex = <font inherit/inherit;;#9876aa;;inherit>sb</font>.indexOf(<font inherit/inherit;;#6a8759;;inherit>"</font><font inherit/inherit;;#cc7832;;inherit>\r\n</font><font inherit/inherit;;#6a8759;;inherit>"</font>)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>if</font>(endOfLineIndex > <font inherit/inherit;;#6897bb;;inherit>0</font>) { | ||
- | String sbprint = <font inherit/inherit;;#9876aa;;inherit>sb</font>.substring(<font inherit/inherit;;#6897bb;;inherit>0</font><font inherit/inherit;;#cc7832;;inherit>,</font>endOfLineIndex)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>sb</font>.delete(<font inherit/inherit;;#6897bb;;inherit>0</font><font inherit/inherit;;#cc7832;;inherit>,</font><font inherit/inherit;;#9876aa;;inherit>sb</font>.length())<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#808080;;inherit>//Toast.makeText(MainActivity.this, "From Arduino: " + sbprint, Toast.LENGTH_SHORT).show();</font><font inherit/inherit;;#808080;;inherit></font><font inherit/inherit;;#cc7832;;inherit>if</font>(<font inherit/inherit;;#9876aa;;inherit>mPlayer</font>!= <font inherit/inherit;;#cc7832;;inherit>null</font>) { | ||
- | <font inherit/inherit;;#9876aa;;inherit>mPlayer</font>.stop()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | Products product = <font inherit/inherit;;#9876aa;;inherit>db</font>.daoAccess().fetchProductByProductId(sbprint)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>if</font>(product == <font inherit/inherit;;#cc7832;;inherit>null</font>){ | ||
- | Toast.<font inherit/inherit;;inherit;;inherit>makeText</font>(MainActivity.<font inherit/inherit;;#cc7832;;inherit>this,</font><font inherit/inherit;;#6a8759;;inherit>"Ne postoji proizvod s ID: "</font>+ sbprint +<font inherit/inherit;;#6a8759;;inherit>" u bazi proizvoda!"</font><font inherit/inherit;;#cc7832;;inherit>,</font>Toast.<font inherit/inherit;;#9876aafont-style:italic;;;inherit>LENGTH_SHORT</font>).show()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#808080;;inherit>// mPlayer = MediaPlayer.create(MainActivity.this, R.raw.error_sound);</font><font inherit/inherit;;#808080;;inherit>// mPlayer.start();</font><font inherit/inherit;;#808080;;inherit></font><font inherit/inherit;;#9876aa;;inherit>mPlayer</font>= MediaPlayer.<font inherit/inherit;;inherit;;inherit>create</font>(MainActivity.<font inherit/inherit;;#cc7832;;inherit>this,</font>R.raw.<font inherit/inherit;;#9876aafont-style:italic;;;inherit>nemaubazi</font>)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>mPlayer</font>.start()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>productNameTextView</font>.setText(<font inherit/inherit;;#6a8759;;inherit>"Skeniraj sljedeći proizvod..."</font>)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>productPriceTextView</font>.setText(<font inherit/inherit;;#6a8759;;inherit>""</font>)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>} <font inherit/inherit;;#cc7832;;inherit>else</font>{ | ||
- | <font inherit/inherit;;#9876aa;;inherit>productNameTextView</font>.setText(product.getProductName())<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>productPriceTextView</font>.setText(product.getProductPrice())<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>String id = product.getProductId()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>int</font>res = MainActivity.<font inherit/inherit;;#cc7832;;inherit>this</font>.getResources().getIdentifier(<font inherit/inherit;;#6a8759;;inherit>"t"</font>+id<font inherit/inherit;;#cc7832;;inherit>,</font><font inherit/inherit;;#6a8759;;inherit>"raw"</font><font inherit/inherit;;#cc7832;;inherit>,</font>MainActivity.<font inherit/inherit;;#cc7832;;inherit>this</font>.getPackageName())<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit>if</font>(res != <font inherit/inherit;;#6897bb;;inherit>0</font>) { | ||
- | <font inherit/inherit;;#9876aa;;inherit>mPlayer</font>= MediaPlayer.<font inherit/inherit;;inherit;;inherit>create</font>(MainActivity.<font inherit/inherit;;#cc7832;;inherit>this,</font>res)<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font><font inherit/inherit;;#9876aa;;inherit>mPlayer</font>.start()<font inherit/inherit;;#cc7832;;inherit>;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | } | ||
- | } | ||
- | <font inherit/inherit;;#cc7832;;inherit>break;</font><font inherit/inherit;;#cc7832;;inherit></font>} | ||
- | }<font inherit/inherit;;#cc7832;;inherit>;</font>}<font inherit/inherit;;#cc7832;;inherit>;</font></code> | ||