Ciao,
ma se volessi farmi inviare il database (data/data/mia applicazione/databases/db) da un device come posso fare?
Devo tipo salvarlo via codice sulla scheda sd (avete qualche esempio?) o ci sono altre alternative?
Grazie
Visualizzazione stampabile
Ciao,
ma se volessi farmi inviare il database (data/data/mia applicazione/databases/db) da un device come posso fare?
Devo tipo salvarlo via codice sulla scheda sd (avete qualche esempio?) o ci sono altre alternative?
Grazie
Ciao,
prima di tutto salvi il db dalla nand alla sdcard:
dopodichè, ad esempio, puoi preparare un invio email con indirizzo email, oggetto, corpo email e allegato (il db sqlite) già definiti, con i soliti intent predefiniti:codice:InputStream dataDB = new FileInputStream("/data/data/tuaapplicazione/tuodatabase");
OutputStream dbOut = new FileOutputStream(Environment.getExternalStorageDirectory() + File.separator + "eventualeDirectory" + File.separator + "sqlite.s3db");
byte[] buffer = new byte[1024];
int length;
while ((length = dataDB.read(buffer))>0){
dbOut.write(buffer, 0, length);
}
dbOut.flush();
dbOut.close();
//***
codice:Calendar c = Calendar.getInstance();
data = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss a");
dataFormattata = data.format(c.getTime());
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"tuoindirizzoemail@tuoserver.it"});
intent.putExtra(Intent.EXTRA_SUBJECT, "Invio automatico SQLITE da Device Android IMEI: " + ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId());
intent.putExtra(Intent.EXTRA_TEXT, "Questa email è stata inviata dal terminale - IMEI: " + ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId() +
"- il " + dataFormattata +
" e contiene in allegato: " + "\n" +
"il backup del database sqlite attuale" + "\n");
intent.setType("application/zip");
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + Environment.getExternalStorageDirectory() + File.separator + "eventualeDirectory" + File.separator + "sqlite.s3db"));
startActivity(Intent.createChooser(intent, "Scegli come inviare l'email:"));
Me gusta l'invio per me! Grazie. ma non posso prenderlo direttamente da data/data/database/....?
Usando il tuo metodo fallisce il caricamento dell'allegato, però lo trovo nell'sdcard.
Forse manca un permesso nel manifest?
Wait.. non devi usare il mio metodo, ma adattarlo opportunamente alla tua situazione. Crea le directory di appoggio programmaticamente
Inviato dal mio Galaxy Nexus con Tapatalk 2
Perfetto son riuscito.. Grazie
Inviato dal mio GT-I9100 usando Androidiani App