@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.widget_conf_layout); dbhelper = new DesktopHostsDBHelper(this); Intent intent = getIntent(); Bundle extras = intent.getExtras(); final int mAppWidgetId; if (extras != null) { mAppWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); } else { mAppWidgetId = 0; } // get All Hosts Cursor cursor = dbhelper.getAllCursor(); int hostcount = cursor.getCount(); if (hostcount == 0) { // Don't create Widget when no Desktops are registered cursor.close(); finish(); } else { ListView hostslistview = (ListView) findViewById(R.id.widgethostslistView); final Spinner playerspinner = (Spinner) findViewById(R.id.playerspinner); final ArrayAdapter<CharSequence> playeradapter = ArrayAdapter.createFromResource( this, R.array.playerarray, android.R.layout.simple_spinner_item); playeradapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); playerspinner.setAdapter(playeradapter); final HostsAdapter hostadapter = new HostsAdapter(this, cursor); hostslistview.setAdapter(hostadapter); hostslistview.setOnItemClickListener( new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int pos, long id) { Cursor itemcursor = (Cursor) parent.getItemAtPosition(pos); String hostname = itemcursor.getString(1); Long uuid = itemcursor.getLong(0); itemcursor.close(); int ipos = playerspinner.getSelectedItemPosition(); String player = playeradapter.getItem(ipos).toString(); complete(mAppWidgetId, hostname, uuid, player); } }); } dbhelper.close(); }
@SuppressWarnings("unused") private void testreaddb() { Cursor cursor = dbhelper.getHostsOnWifiCursor("<unknown ssid>"); System.out.println(cursor.getCount()); if (cursor.moveToFirst()) { do { System.out.println(cursor.getLong(0)); System.out.println(cursor.getString(2)); System.out.println(cursor.getInt(3)); // System.out.println(cursor.getString(6)); } while (cursor.moveToNext()); } }
private void loadHostlist() { hostslistview.removeAllViewsInLayout(); HostsAdapter ha = new HostsAdapter(this, dbhelper.getAllCursor()); hostslistview.setAdapter(ha); hostslistview.setOnItemLongClickListener( new OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> arg0, View parent, int pos, long id) { Cursor cursor = dbhelper.getHostByIdCursor(id); String ip = cursor.getString(2); int port = cursor.getInt(3); String wifi = cursor.getString(6); cursor.close(); showEditHostDialog(id, ip, port, wifi); return false; } }); hostslistview.setOnItemClickListener( new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View parent, int pos, long id) { Cursor cursor = dbhelper.getHostByIdCursor(id); String host = cursor.getString(2); int port = cursor.getInt(3); cursor.close(); Intent i = new Intent(getApplicationContext(), StatusUpdateService.class); i.putExtra("commandtype", "PING"); i.putExtra("message", ""); i.putExtra("host", host); i.putExtra("port", port); startService(i); Toast pingmsg = Toast.makeText(getApplicationContext(), "send Ping", Toast.LENGTH_SHORT); pingmsg.show(); } }); }
@Override protected void onDestroy() { dbhelper.close(); super.onDestroy(); }