在短信recv写sd crad谁使用详细电缆显示短信 [英] on sms recv write sms in sd crad who Show using deta cable
问题描述
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();
} < br $>
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 SmsManager
final 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谁使用详细电缆显示短信的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!