DigiWallet - su billetera inteligente (Intel IoT) (7 / 9 paso)

Paso 7: Código de la aplicación Android

 package com.java.android.digiwallet;import android.os.Bundle; import android.app.Activity; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.BroadcastReceiver; import android.content.Context; import java.util.Set; import android.content.Intent; import android.content.IntentFilter; import android.view.View; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import android.support.v4.app.NotificationCompat;public class MainActivity extends Activity { private static final int REQUEST_ENABLE_BT = 1; private Button onBtn; private Button offBtn; private Button listBtn; private Button findBtn; private TextView text; private BluetoothAdapter myBluetoothAdapter; private Set pairedDevices; private ListView myListView; private ArrayAdapter BTArrayAdapter; NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this); protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); IntentFilter filter1 = new IntentFilter(BluetoothDevice.ACTION_ACL_CONNECTED); IntentFilter filter2 = new IntentFilter(BluetoothDevice.ACTION_ACL_DISCONNECT_REQUESTED); IntentFilter filter3 = new IntentFilter(BluetoothDevice.ACTION_ACL_DISCONNECTED); this.registerReceiver(bReceiver, filter1); this.registerReceiver(bReceiver, filter2); this.registerReceiver(bReceiver, filter3); // take an instance of BluetoothAdapter - Bluetooth radio myBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if(myBluetoothAdapter == null) { onBtn.setEnabled(false); offBtn.setEnabled(false); listBtn.setEnabled(false); findBtn.setEnabled(false); text.setText("Status: not supported"); Toast.makeText(getApplicationContext(),"Your device does not support Bluetooth", Toast.LENGTH_LONG).show(); } else { text = (TextView) findViewById(R.id.text); onBtn = (Button)findViewById(R.id.turnOn); onBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub on(v); } }); offBtn = (Button)findViewById(R.id.turnOff); offBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub off(v); } }); listBtn = (Button)findViewById(R.id.paired); listBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub list(v); } }); findBtn = (Button)findViewById(R.id.search); findBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub find(v); } }); myListView = (ListView)findViewById(R.id.listView1); // create the arrayAdapter that contains the BTDevices, and set it to the ListView BTArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1); myListView.setAdapter(BTArrayAdapter); } } public void on(View view){ if (!myBluetoothAdapter.isEnabled()) { Intent turnOnIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(turnOnIntent, REQUEST_ENABLE_BT); Toast.makeText(getApplicationContext(),"Bluetooth turned on" , Toast.LENGTH_LONG).show(); } else{ Toast.makeText(getApplicationContext(),"Bluetooth is already on", Toast.LENGTH_LONG).show(); } } protected void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub if(requestCode == REQUEST_ENABLE_BT){ if(myBluetoothAdapter.isEnabled()) { text.setText("Status: Enabled"); } else { text.setText("Status: Disabled"); } } } public void list(View view){ // get paired devices pairedDevices = myBluetoothAdapter.getBondedDevices(); // put it's one to the adapter for(BluetoothDevice device : pairedDevices) BTArrayAdapter.add(device.getName()+ "\n" + device.getAddress()); Toast.makeText(getApplicationContext(),"Show Paired Devices", Toast.LENGTH_SHORT).show(); } final BroadcastReceiver bReceiver = new BroadcastReceiver() { public void onReceive(Context context, Intent intent) { String action = intent.getAction(); // When discovery finds a device if (BluetoothDevice.ACTION_FOUND.equals(action)) { // Get the BluetoothDevice object from the Intent BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); // add the name and the MAC address of the object to the arrayAdapter BTArrayAdapter.add(device.getName() + "\n" + device.getAddress()); BTArrayAdapter.notifyDataSetChanged(); } if (BluetoothDevice.ACTION_ACL_CONNECTED.equals(action)) { // Device is now connected // BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); Toast.makeText(getApplicationContext(),"Device is now connected", Toast.LENGTH_SHORT).show(); mBuilder.setSmallIcon(R.drawable.abc_ic_menu_cut_mtrl_alpha); mBuilder.setContentTitle("DigiWallet: Alert"); mBuilder.setContentText("Your wallet connected to your device!"); NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); } if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) { // Done searching Toast.makeText(getApplicationContext(),"Done searching", Toast.LENGTH_SHORT).show(); } if (BluetoothDevice.ACTION_ACL_DISCONNECT_REQUESTED.equals(action)) { // Device is about to disconnect Toast.makeText(getApplicationContext(),"Device is about to disconnect", Toast.LENGTH_SHORT).show(); } if (BluetoothDevice.ACTION_ACL_DISCONNECTED.equals(action)) { // Device has disconnected Toast.makeText(getApplicationContext(),"Device has disconnected", Toast.LENGTH_SHORT).show(); mBuilder.setSmallIcon(R.drawable.abc_ic_menu_cut_mtrl_alpha); mBuilder.setContentTitle("DigiWallet: Alert"); mBuilder.setContentText("Your wallet seems to be out of reach!! Please check your surroundings"); NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);// notificationID allows you to update the notification later on. mNotificationManager.notify(1, mBuilder.build()); } } }; public void find(View view) { if (myBluetoothAdapter.isDiscovering()) { // the button is pressed when it discovers, so cancel the discovery myBluetoothAdapter.cancelDiscovery(); } else { BTArrayAdapter.clear(); myBluetoothAdapter.startDiscovery(); registerReceiver(bReceiver, new IntentFilter(BluetoothDevice.ACTION_FOUND)); } } public void off(View view){ myBluetoothAdapter.disable(); text.setText("Status: Disconnected"); Toast.makeText(getApplicationContext(),"Bluetooth turned off", Toast.LENGTH_LONG).show(); } protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); unregisterReceiver(bReceiver); } } 

Esta clase controla la conexión y enviar alerta de notificación si la cartera sale de rango o vuelve en gama.

Artículos Relacionados

Puerta/caja inteligente (Intel Iot)

Puerta/caja inteligente (Intel Iot)

Nombre del proyecto: Puerta inteligente/BoxCloudConectividad: síComponentes de software: Web Services, Node.js, IDE de ArduinoComponente de hardware: Intel Edison tablero, cerradura electromagnética, Kit GSM, relé, pulsadores Dev Kit: Kit de Grove, c
Botiquín - pastillero inteligente (Intel IoT)

Botiquín - pastillero inteligente (Intel IoT)

Aquí viene el Kit de salud que le recuerda de que medicamentos tomarcon qué dosificación y el tiempo que necesita para llevarlo a. La aplicación también le notificará sobre la paciente y teléfono del tutor si él o ella ha perdido una ingesta de la pí
Sistema de gestión de agua inteligente (Intel-IoT)

Sistema de gestión de agua inteligente (Intel-IoT)

Todos sabemos que "El agua es elixir de la vida".E inmediatamente una pregunta mi mente... ¿Sobre la eficacia que está utilizando?Sí, la respuesta a esta pregunta es nuestro proyecto.El proyecto de gestión inteligente del agua, como el nombre di
Inteligente sistema de anuncios (Intel IoT) #IntelMaker

Inteligente sistema de anuncios (Intel IoT) #IntelMaker

Anuncio es uno del más grande negocio de hoy. Algunas de las más grandes compañías como Google y Facebook ganan de los anuncios. ¿Por qué? Porque los anuncios son inteligente y selectiva. Están centradas en el cliente... El anunciaTe todo lo puede él
Parque inteligente usando comunicación láser (Intel IoT)

Parque inteligente usando comunicación láser (Intel IoT)

Dada la crisis actual del estacionamiento de nuestro país y las nuevas soluciones como sistemas de multiniveles, no ayuda mucho. Nuestro proyecto es un esfuerzo por ahorrar tiempo, energía y Finanzas relacionadas con aparcamiento. El check-in, estaci
Alarma de ruido de Edison de Intel (Intel IoT)

Alarma de ruido de Edison de Intel (Intel IoT)

IntroducciónTengo una alarma antirrobo y alarma de incendio, pero no hay manera de saber si cualquiera está sonando a menos que estoy en la casa. En lugar de sustituirlas por alternativas 'inteligentes', planeo construir un dispositivo para escuchar
BeatBox: choque seguimiento de los paquetes con Edison de Intel - Intel IOT

BeatBox: choque seguimiento de los paquetes con Edison de Intel - Intel IOT

Hola todo el mundoapenas volvimos casa después de participar en el IoT Roadshow de Intel (y hackathon) en Londres.Fue increíble y lleno de ideas y tira creativa. Una muy buena experiencia. Usted debe tratar.Llegamos como un equipo ya formado y con un
Elegante salones (Intel IoT)

Elegante salones (Intel IoT)

Solución inteligente, rentable y fácilmente instalable para oficina recursos como salas de Internet habilitado.Esta solución daría estado de disponibilidad de salas de conferencias o salas de reuniones en el tiempo Real y los equipos pueden planear s
Diseñar una expansión PCB (Intel® IoT)

Diseñar una expansión PCB (Intel® IoT)

Este Instructable ha sido escrito como punto de partida para aquellos que están dispuestos a utilizar al Intel® Edison a su máximo potencial, al incorporar en un proyecto integrado completamente desarrollado. Para hacer esto, usted probablemente tend
Intel IoT Analytics Dashboard

Intel IoT Analytics Dashboard

Este Instructable proporciona información sobre cómo cómo configurar una cuenta de Intel Analytics Dashboard, conectar un dispositivo a la nube, el control de un dispositivo a través de la nube y ejecutar programas de Arduino que se comunican con la
Home Sentry Robot proyecto del Roadshow de Intel-IoT en Austin, TX por el RoboDorks

Home Sentry Robot proyecto del Roadshow de Intel-IoT en Austin, TX por el RoboDorks

Ya que iba a ser en el área de Austin, TX para el cumpleaños de mi hija, me invitaron a unirse a mis amigos para el Roadshow de Intel-IoT y Hack-a-thon, con el desarrollo de Intel Edison Kit. Los criterios del concurso era utilizar un Intel Edison y
Veo que (INTEL IOT utilizando INTEL EDISON)

Veo que (INTEL IOT utilizando INTEL EDISON)

Proyecto ICU (INTEL IOT) utilizando INTEL EDISONhttps://github.com/makerspaze/intel_iot_leoCjProyecto ICU es un dispositivo de iot inteligente que puede ver e identificar el mundo físico con la ayuda de conectividad placa Intel para Edison y nube. Es
LoveLinker (Intel IoT)

LoveLinker (Intel IoT)

(i) nombre del proyecto; LoveLinker(ii) Resumen del proyecto; Corazón entrega a través de la nube a tu amor por Edison.The corazón incluyendo ritmos y emociones. Se puede sentir uno al otro cada vez cuando todos con la LoveLinker que hizo como una pu
Somabot - un camarero automatizado (Intel IOT)

Somabot - un camarero automatizado (Intel IOT)

Somabot es un barman automatizado. Simplemente seleccione los ingredientes y las bebidas se pueden acceder desde cualquier navegador móvil o escritorio listo para hacer cócteles. He adjuntado un chip NFC en la parte superior izquierda, por lo que la