· 7 years ago · Feb 25, 2019, 09:42 PM
109-05 21:01:23.082: W/IInputConnectionWrapper(758): showStatusIcon on inactive InputConnection
209-05 21:01:48.901: I/dalvikvm(813): threadid=3: reacting to signal 3
309-05 21:01:48.951: I/dalvikvm(813): Wrote stack traces to '/data/anr/traces.txt'
409-05 21:01:49.401: I/dalvikvm(813): threadid=3: reacting to signal 3
509-05 21:01:49.451: I/dalvikvm(813): Wrote stack traces to '/data/anr/traces.txt'
609-05 21:01:49.741: D/gralloc_goldfish(813): Emulator without GPU emulation detected.
709-05 21:01:49.901: I/dalvikvm(813): threadid=3: reacting to signal 3
809-05 21:01:49.951: I/dalvikvm(813): Wrote stack traces to '/data/anr/traces.txt'
909-05 21:02:06.762: I/dalvikvm(813): threadid=3: reacting to signal 3
1009-05 21:02:06.781: I/dalvikvm(813): Wrote stack traces to '/data/anr/traces.txt'
1109-05 21:02:28.111: D/dalvikvm(813): GC_CONCURRENT freed 143K, 3% free 9386K/9671K, paused 8ms+31ms
1209-05 21:02:28.122: E/SQLiteDatabase(813): close() was never explicitly called on database '/data/data/hr.punctum.LociranjePonudaProizvoda/databases/proizvodidb'
1309-05 21:02:28.122: E/SQLiteDatabase(813): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
1409-05 21:02:28.122: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
1509-05 21:02:28.122: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
1609-05 21:02:28.122: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
1709-05 21:02:28.122: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
1809-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:770)
1909-05 21:02:28.122: E/SQLiteDatabase(813): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
2009-05 21:02:28.122: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
2109-05 21:02:28.122: E/SQLiteDatabase(813): at hr.punctum.LociranjePonudaProizvoda.DetaljiProizvoda.onCreate(DetaljiProizvoda.java:24)
2209-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.Activity.performCreate(Activity.java:4465)
2309-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
2409-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
2509-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
2609-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ActivityThread.access$600(ActivityThread.java:123)
2709-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
2809-05 21:02:28.122: E/SQLiteDatabase(813): at android.os.Handler.dispatchMessage(Handler.java:99)
2909-05 21:02:28.122: E/SQLiteDatabase(813): at android.os.Looper.loop(Looper.java:137)
3009-05 21:02:28.122: E/SQLiteDatabase(813): at android.app.ActivityThread.main(ActivityThread.java:4424)
3109-05 21:02:28.122: E/SQLiteDatabase(813): at java.lang.reflect.Method.invokeNative(Native Method)
3209-05 21:02:28.122: E/SQLiteDatabase(813): at java.lang.reflect.Method.invoke(Method.java:511)
3309-05 21:02:28.122: E/SQLiteDatabase(813): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
3409-05 21:02:28.122: E/SQLiteDatabase(813): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
3509-05 21:02:28.122: E/SQLiteDatabase(813): at dalvik.system.NativeStart.main(Native Method)
3609-05 21:02:28.202: E/System(813): Uncaught exception thrown by finalizer
3709-05 21:02:28.332: E/System(813): java.lang.IllegalStateException: Don't have database lock!
3809-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase.verifyLockOwner(SQLiteDatabase.java:2090)
3909-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2182)
4009-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2178)
4109-05 21:02:28.332: E/System(813): at android.util.LruCache.trimToSize(LruCache.java:197)
4209-05 21:02:28.332: E/System(813): at android.util.LruCache.evictAll(LruCache.java:285)
4309-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase.deallocCachedSqlStatements(SQLiteDatabase.java:2143)
4409-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase.closeClosable(SQLiteDatabase.java:1126)
4509-05 21:02:28.332: E/System(813): at android.database.sqlite.SQLiteDatabase.finalize(SQLiteDatabase.java:1914)
4609-05 21:02:28.332: E/System(813): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182)
4709-05 21:02:28.332: E/System(813): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
4809-05 21:02:28.332: E/System(813): at java.lang.Thread.run(Thread.java:856)
4909-05 21:02:28.511: E/SQLiteDatabase(813): close() was never explicitly called on database '/data/data/hr.punctum.LociranjePonudaProizvoda/databases/proizvodidb'
5009-05 21:02:28.511: E/SQLiteDatabase(813): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
5109-05 21:02:28.511: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
5209-05 21:02:28.511: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
5309-05 21:02:28.511: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
5409-05 21:02:28.511: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
5509-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:770)
5609-05 21:02:28.511: E/SQLiteDatabase(813): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
5709-05 21:02:28.511: E/SQLiteDatabase(813): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
5809-05 21:02:28.511: E/SQLiteDatabase(813): at hr.punctum.LociranjePonudaProizvoda.DetaljiProizvoda.onCreate(DetaljiProizvoda.java:24)
5909-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.Activity.performCreate(Activity.java:4465)
6009-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
6109-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
6209-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
6309-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ActivityThread.access$600(ActivityThread.java:123)
6409-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
6509-05 21:02:28.511: E/SQLiteDatabase(813): at android.os.Handler.dispatchMessage(Handler.java:99)
6609-05 21:02:28.511: E/SQLiteDatabase(813): at android.os.Looper.loop(Looper.java:137)
6709-05 21:02:28.511: E/SQLiteDatabase(813): at android.app.ActivityThread.main(ActivityThread.java:4424)
6809-05 21:02:28.511: E/SQLiteDatabase(813): at java.lang.reflect.Method.invokeNative(Native Method)
6909-05 21:02:28.511: E/SQLiteDatabase(813): at java.lang.reflect.Method.invoke(Method.java:511)
7009-05 21:02:28.511: E/SQLiteDatabase(813): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
7109-05 21:02:28.511: E/SQLiteDatabase(813): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
7209-05 21:02:28.511: E/SQLiteDatabase(813): at dalvik.system.NativeStart.main(Native Method)
7309-05 21:02:28.552: E/System(813): Uncaught exception thrown by finalizer
7409-05 21:02:28.601: E/System(813): java.lang.IllegalStateException: Don't have database lock!
7509-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase.verifyLockOwner(SQLiteDatabase.java:2090)
7609-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2182)
7709-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2178)
7809-05 21:02:28.601: E/System(813): at android.util.LruCache.trimToSize(LruCache.java:197)
7909-05 21:02:28.601: E/System(813): at android.util.LruCache.evictAll(LruCache.java:285)
8009-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase.deallocCachedSqlStatements(SQLiteDatabase.java:2143)
8109-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase.closeClosable(SQLiteDatabase.java:1126)
8209-05 21:02:28.601: E/System(813): at android.database.sqlite.SQLiteDatabase.finalize(SQLiteDatabase.java:1914)
8309-05 21:02:28.601: E/System(813): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182)
8409-05 21:02:28.601: E/System(813): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
8509-05 21:02:28.601: E/System(813): at java.lang.Thread.run(Thread.java:856)
86
87package hr.punctum.LociranjePonudaProizvoda;
88
89import android.content.ContentValues;
90import android.content.Context;
91import android.database.sqlite.SQLiteDatabase;
92import android.database.sqlite.SQLiteOpenHelper;
93
94public class DatabaseHelper extends SQLiteOpenHelper {
95
96 public static final String DATABASE_NAME = "proizvodidb";
97
98 public DatabaseHelper(Context context) {
99 super(context, DATABASE_NAME, null, 1);
100 }
101
102 @Override
103 public void onCreate(SQLiteDatabase db) {
104 /*
105 * Kreiranje tabele proizvodi i punjenje tabele sa podacima.
106 * Kasnije cu prebaciti ove hardcore kodirane statment-e u XML datoteku.
107 */
108 String sql = "CREATE TABLE IF NOT EXISTS proizvodi (" +
109 "_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
110 "naziv TEXT, " +
111 "tvrtka TEXT, " +
112 "cijena TEXT, " +
113 "kategorija TEXT, " +
114 "telefonTvrtke TEXT, " +
115 "adresaTvrtke TEXT)";
116 db.execSQL(sql);
117
118 ContentValues values = new ContentValues();
119
120 values.put("naziv", "Canon 60D");
121 values.put("tvrtka", "Protis");
122 values.put("cijena", "4600");
123 values.put("kategorija", "fotoaparati");
124 values.put("telefonTvrtke", "016587176");
125 values.put("adresaTvrtke", "Laducka 36A");
126 db.insert("proizvodi", "tvrtka", values);
127
128 values.put("naziv", "Nikon D800");
129 values.put("tvrtka", "MagazinRS");
130 values.put("cijena", "21600");
131 values.put("kategorija", "fotoaparati");
132 values.put("telefonTvrtke", "454562542");
133 values.put("adresaTvrtke", "Laniste 1B");
134 db.insert("proizvodi", "tvrtka", values);
135
136 values.put("naziv", "Olympus OM-D");
137 values.put("tvrtka", "Telebit");
138 values.put("cijena", "5200");
139 values.put("kategorija", "fotoaparati");
140 values.put("telefonTvrtke", "5657676");
141 values.put("adresaTvrtke", "Laniste 1B");
142 db.insert("proizvodi", "tvrtka", values);
143
144 values.put("naziv", "Pentax K-7");
145 values.put("tvrtka", "Svijet medija");
146 values.put("cijena", "7400");
147 values.put("kategorija", "fotoaparati");
148 values.put("telefonTvrtke", "11236676");
149 values.put("adresaTvrtke", "Laniste 1B");
150 db.insert("proizvodi", "tvrtka", values);
151
152 values.put("naziv", "Samsung S3");
153 values.put("tvrtka", "Svijet medija");
154 values.put("cijena", "4200");
155 values.put("kategorija", "mobiteli");
156 values.put("telefonTvrtke", "7814442222");
157 values.put("adresaTvrtke", "Laniste 1B");
158 db.insert("proizvodi", "tvrtka", values);
159
160 values.put("naziv", "Samsung S2");
161 values.put("tvrtka", "Svijet medija");
162 values.put("cijena", "3200");
163 values.put("kategorija", "mobiteli");
164 values.put("telefonTvrtke", "7814442222");
165 values.put("adresaTvrtke", "Laniste 1B");
166 db.insert("proizvodi", "tvrtka", values);
167
168 values.put("naziv", "Huawei U8650");
169 values.put("tvrtka", "MagazinRS");
170 values.put("cijena", "3200");
171 values.put("kategorija", "mobiteli");
172 values.put("telefonTvrtke", "7814442222");
173 values.put("adresaTvrtke", "Laniste 1B");
174 db.insert("proizvodi", "tvrtka", values);
175
176 values.put("naziv", "Huawei U8660");
177 values.put("tvrtka", "MagazinRS");
178 values.put("cijena", "3200");
179 values.put("kategorija", "mobiteli");
180 values.put("telefonTvrtke", "7814442222");
181 values.put("adresaTvrtke", "Laniste 1B");
182 db.insert("proizvodi", "tvrtka", values);
183
184 values.put("naziv", "Huawei U8660");
185 values.put("tvrtka", "MagazinRS");
186 values.put("cijena", "3400");
187 values.put("kategorija", "mobiteli");
188 values.put("telefonTvrtke", "7814442222");
189 values.put("adresaTvrtke", "Laniste 1B");
190 db.insert("proizvodi", "tvrtka", values);
191
192 //db.close();
193 }
194
195 @Override
196 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
197 db.execSQL("DROP TABLE IF EXISTS proizvodi");
198 onCreate(db);
199 }
200
201}
202
203package hr.punctum.LociranjePonudaProizvoda;
204
205import android.app.ListActivity;
206import android.content.Intent;
207import android.database.Cursor;
208import android.database.sqlite.SQLiteDatabase;
209import android.os.Bundle;
210import android.view.View;
211import android.widget.EditText;
212import android.widget.ListAdapter;
213import android.widget.ListView;
214import android.widget.SimpleCursorAdapter;
215
216public class ListaProizvoda extends ListActivity {
217
218 protected EditText searchText;
219 protected SQLiteDatabase db;
220 protected Cursor cursor;
221 protected ListAdapter adapter;
222
223
224 /** Called when the activity is first created. */
225 @Override
226 public void onCreate(Bundle savedInstanceState) {
227 super.onCreate(savedInstanceState);
228 setContentView(R.layout.main);
229 db = (new DatabaseHelper(this)).getWritableDatabase();
230 searchText = (EditText) findViewById (R.id.searchText);
231
232 }
233
234 @SuppressWarnings("deprecation")
235 public void search(View view) {
236 // || je operacija spajanja u SQLiteu, slijedeci sql query vraca rezultat iz baze svih zapisa koji pocinju na slovo uneseno u search polje
237 cursor = db.rawQuery("SELECT _id, naziv, tvrtka, cijena FROM proizvodi WHERE naziv LIKE ?",
238 new String[]{searchText.getText().toString() + "%"});
239 adapter = new SimpleCursorAdapter(this,R.layout.proizvodi_list_artikl,cursor,new String[] {"naziv", "tvrtka", "cijena"},new int[] {R.id.naziv, R.id.tvrtka, R.id.cijena});
240 setListAdapter(adapter);
241
242 }
243
244 public void onListItemClick(ListView parent, View view, int position, long id) {
245 //kreiranje Intenta za komunikaciju s drugim activity-om
246 Intent intent = new Intent(this, DetaljiProizvoda.class);
247 Cursor cursor = (Cursor) adapter.getItem(position);
248 //slanje varijable
249 intent.putExtra("PROIZVODI_ID", cursor.getInt(cursor.getColumnIndex("_id")));
250 startActivity(intent);
251 }
252
253}
254
255package hr.punctum.LociranjePonudaProizvoda;
256
257import android.app.Activity;
258import android.database.Cursor;
259import android.database.sqlite.SQLiteDatabase;
260import android.os.Bundle;
261import android.widget.TextView;
262
263public class DetaljiProizvoda extends Activity {
264
265 protected TextView naziv;
266 protected TextView kategorija;
267 protected TextView tvrtka;
268 protected TextView telefonTvrtke;
269 protected TextView adresaTvrtke;
270 protected int proizvodId;
271
272 @Override
273 public void onCreate(Bundle savedInstanceState) {
274 super.onCreate(savedInstanceState);
275 setContentView(R.layout.detalji_proizvoda);
276 //hvatanje parametra (ID iz tablice) Intenta iz ListaProizvoda activity-a
277 proizvodId = getIntent().getIntExtra("PROIZVODI_ID", 0);
278 SQLiteDatabase db = (new DatabaseHelper(this)).getWritableDatabase();
279 Cursor cursor = db.rawQuery("SELECT proizv._id, proizv.naziv, proizv.tvrtka, proizv.cijena, proizv.kategorija, proizv.telefonTvrtke, proizv.adresaTvrtke FROM proizvodi proizv LEFT OUTER JOIN proizvodi mgr ON proizv._id = mgr._id WHERE proizv._id = ?",
280 new String[]{""+proizvodId});
281
282 if (cursor.getCount() == 1)
283 {
284 cursor.moveToFirst();
285
286 naziv = (TextView) findViewById(R.id.naziv);
287 naziv.setText(cursor.getString(cursor.getColumnIndex("naziv"))); /*+ " " + cursor.getString(cursor.getColumnIndex("lastName")));*/
288
289 kategorija = (TextView) findViewById(R.id.kategorija);
290 kategorija.setText(cursor.getString(cursor.getColumnIndex("kategorija")));
291
292 tvrtka = (TextView) findViewById(R.id.tvrtka);
293 tvrtka.setText(cursor.getString(cursor.getColumnIndex("tvrtka")));
294
295 telefonTvrtke = (TextView) findViewById(R.id.telefonTvrtke);
296 telefonTvrtke.setText(cursor.getString(cursor.getColumnIndex("telefonTvrtke")));
297
298 adresaTvrtke = (TextView) findViewById(R.id.adresaTvrtke);
299 adresaTvrtke.setText(cursor.getString(cursor.getColumnIndex("adresaTvrtke")));
300
301 }
302
303 }
304
305}
306
307@Override
308protected void onDestroy() {
309 cursor.close();
310 db.close();
311 super.onDestroy();
312}
313
314public void onListItemClick(ListView parent, View view, int position, long id) {
315 //kreiranje Intenta za komunikaciju s drugim activity-om
316 Intent intent = new Intent(this, DetaljiProizvoda.class);
317 //slanje varijable
318 intent.putExtra("PROIZVODI_ID", id);
319 startActivity(intent);
320}
321
322cursor.close();
323db.close();
324
325@SuppressWarnings("deprecation")
326public void search(View view) {
327 // || je operacija spajanja u SQLiteu, slijedeci sql query vraca rezultat iz baze svih zapisa koji pocinju na slovo uneseno u search polje
328 cursor = db.rawQuery("SELECT _id, naziv, tvrtka, cijena FROM proizvodi WHERE naziv LIKE ?",
329 new String[]{searchText.getText().toString() + "%"});
330 adapter = new SimpleCursorAdapter(this,R.layout.proizvodi_list_artikl,cursor,new String[] {"naziv", "tvrtka", "cijena"},new int[] {R.id.naziv, R.id.tvrtka, R.id.cijena});
331 setListAdapter(adapter);
332 cursor.close(); // Add this line
333 db.close(); // And this line as well
334
335}