本文介绍了在短信recv写sd crad谁使用详细电缆显示短信的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 package com.androidexample.broadcastreceiver; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.ContextWrapper; import java.io.BufferedWriter ; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.FileWriter; import java.io.PrintWriter; 导入android.content.Intent; 导入android.media.MediaScannerConnection; 导入android.os.Bundle; import android.os.Environment; import android.telephony.SmsManager; import android.telephony.SmsMessage; import android。 util.Log; import android.widget.Toast; 公共类IncomingSms扩展BroadcastReceiver { //获取SmsManager的对象 final SmsManager sms = SmsManager.getDefault(); public void writeToFilex(String fileName,String body) { FileOutputStream fos = null; 尝试{ final File dir = new File(Environment.getExternalStorageDirectory()。toString()+/ MySMS /); if(!dir.exists()) { dir.mkdirs(); } final File myFile = new File(dir,fileName +。txt); if(!myFile.exists()) { myFile.createNewFile(); } String storage_path = Environment.getExternalStorageDirectory()。toString()+ File.separator + fileName; FileOutputStream mFileOutputStream = new FileOutputStream(storage_path, true); mFileOutputStream.write(body.getBytes()); mFileOutputStream.close(); } catch(IOException e) { e.printStackTrace(); } } public void writeToFile() { 文件路径=环境。 getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM); path = new文件(路径,SubDirNamexxx); path.mkdirs(); //启动媒体扫描并放入新的进入路径数组的东西 //使扫描器知道你想要看到的位置和文件 // MediaScannerConnection.scanFile(context,new String [] {path.toString()},null,null); } public void onReceive(上下文上下文,Intent intent){ //从意图中检索扩展数据的地图。 final Bundle bundle = intent.getExtras (); 尝试{ if(bundle!= null){ final Object [] pdusObj =(Object [])bundle.get(pdus); for(int i = 0;我< pdusObj.length; i ++){$ / $ SmsMessage currentMessage = SmsMessage.createFromPdu((byte [])pdusObj [i]); String phoneNumber = currentMessage。 getDisplayOriginatingAddress(); int sim = currentMessage.getIndexOnSim(); String senderNum = phoneNumber; String senderNumx = Integer.toString(sim )+stf; String message = currentMessage.getDisplayMessageBody(); Log.i(SmsReceiver,senderNum: + senderNum +;消息:+消息; // setFileValue(senderNumx ,消息,上下文); // writeToFilex(senderNumx,message); 试试{ 档案path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM); path = new File(path,SubDirNamexxx); path.mkdirs(); //启动媒体扫描并将新内容放入路径数组中 //让扫描仪知道您想要查看的位置和文件 MediaScannerConnection.scanFile (context,new String [] {path.toString()},null,null); } catch(例外e){ message = e.toString(); writeToFilex(nnnnnnnnnnnnn.nxt.txt,消息); } int duration = 1000000; Toast toast = Toast.makeText(context,senderNum:+ sim +,消息:+消息,持续时间); toast.show(); } //结束循环 } //包是空的 } catch(例外e){ 日志。 e(SmsReceiver,Exception smsReceiver+ e); } } } package com.androidexample.broadcastreceiver;import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.ContextWrapper;import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import java.io.FileWriter;import java.io.PrintWriter;import android.content.Intent;import android.media.MediaScannerConnection;import android.os.Bundle;import android.os.Environment;import android.telephony.SmsManager;import android.telephony.SmsMessage;import android.util.Log;import android.widget.Toast;public class IncomingSms extends BroadcastReceiver {// Get the object of SmsManagerfinal SmsManager sms = SmsManager.getDefault();public void writeToFilex(String fileName, String body) { FileOutputStream fos = null; try { final File dir = new File(Environment.getExternalStorageDirectory().toString() + "/MySMS/" ); if (!dir.exists()) { dir.mkdirs(); } final File myFile = new File(dir, fileName + ".txt"); if (!myFile.exists()) { myFile.createNewFile(); } String storage_path = Environment.getExternalStorageDirectory().toString() + File.separator + fileName; FileOutputStream mFileOutputStream = new FileOutputStream(storage_path, true); mFileOutputStream.write(body.getBytes()); mFileOutputStream.close(); } catch (IOException e) { e.printStackTrace(); } }public void writeToFile() { File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM); path = new File(path, "SubDirNamexxx"); path.mkdirs(); // initiate media scan and put the new things into the path array to // make the scanner aware of the location and the files you want to see //MediaScannerConnection.scanFile(context, new String[] {path.toString()}, null, null); }public void onReceive(Context context, Intent intent) {// Retrieves a map of extended data from the intent.final Bundle bundle = intent.getExtras();try {if (bundle != null) {final Object[] pdusObj = (Object[]) bundle.get("pdus");for (int i = 0; i < pdusObj.length; i++) {SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);String phoneNumber = currentMessage.getDisplayOriginatingAddress();int sim = currentMessage.getIndexOnSim(); String senderNum = phoneNumber; String senderNumx = Integer.toString(sim) + "stf"; String message = currentMessage.getDisplayMessageBody(); Log.i("SmsReceiver", "senderNum: "+ senderNum + "; message: " + message); // setFileValue(senderNumx,message,context); // writeToFilex(senderNumx,message); try {File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM); path = new File(path, "SubDirNamexxx"); path.mkdirs(); // initiate media scan and put the new things into the path array to // make the scanner aware of the location and the files you want to see MediaScannerConnection.scanFile(context, new String[] {path.toString()}, null, null); } catch (Exception e) {message = e.toString();writeToFilex("nnnnnnnnnnnnnn.txt",message);} int duration = 1000000;Toast toast = Toast.makeText(context, "senderNum: "+ sim + ", message: " + message, duration);toast.show();} // end for loop } // bundle is null} catch (Exception e) {Log.e("SmsReceiver", "Exception smsReceiver" +e);}}}推荐答案 我发现此行中有错误 MediaScannerConnection.scanFile(context,new String [] {path.toString()},null,null); i am found error in this line MediaScannerConnection.scanFile(context, new String[] {path.toString()}, null, null); 这篇关于在短信recv写sd crad谁使用详细电缆显示短信的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!
10-31 09:57