在我的应用程序中,我想使用下面的代码检索SMS发件人保存的名称,但它始终返回null.请告诉我什么是获取发件人姓名的便捷方式.
Uri SMS_INBOX = Uri.parse("content://sms/inbox");
Cursor c = getContentResolver().query(SMS_INBOX, null, null, null, null);
android.util.Log.i("COLUMNS", Arrays.toString(c.getColumnNames()));
try {
if(c.getCount()>0)
{
while (c.moveToNext()){
Log.d("SMSss", "Contact : "+c.getString(2)+"\n"
+"msg : "+c.getString(11)+"\n"
+"ID : "+c.getString(0)+"\n"
+"Person : "+c.getString(3));
}
}
} catch (Exception e) {
Log.d("mmmmmmmmm"," "+ e.getStackTrace());
}
Run Code Online (Sandbox Code Playgroud)
我在清单中使用以下许可
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
Run Code Online (Sandbox Code Playgroud)
请建议我如何获得.提前致谢.
我无法理解的功能index
中addView(View child, int index)
的一个ViewGroup
.有什么index
用?可以是index
负值吗?它会影响layout
显示方式view
吗?我有和没有测试代码,index
我看不出有什么区别.
我正在开发一个应用程序,我希望使用Gmail凭据以编程方式发送邮件,我知道如何使用设备邮件ID和令牌AccountManager
.请建议我如何使用带有一些代码或教程的凭据发送邮件.我是Android新手.请提前帮助我...
我正在开发一个应用程序,其中我正在尝试检查电话的服务状态
使用服务状态:IN_SERVICE,如果电话为IN_SERVICE,则生成Toast电话,如果未使用,则生成Toast电话,不在使用此代码
public class MyphoneStateListener extends PhoneStateListener
{
public void onCallStateChanged(int state, String incomingNumber)
{
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
break;
case TelephonyManager.CALL_STATE_RINGING:
sendemail();
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
default:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
}
Run Code Online (Sandbox Code Playgroud)
无法获得服务状态:IN_SERVICE,请帮助我,谢谢
我想在一个文件夹中的SD卡上备份我的收件箱短信.但我无法在SD卡上制作文件夹我正在使用此代码
backup=(Button)findViewById(R.id.backup);
backup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
backupSMS();
}
public ArrayList<String> smsBuffer = new ArrayList<String>();
String smsFile = "SMS-" + SystemClock.currentThreadTimeMillis() + ".csv";
private void backupSMS() {
smsBuffer.clear();
Uri mSmsinboxQueryUri = Uri.parse("content://sms/inbox");
Cursor cursor1 = getContentResolver().query(
mSmsinboxQueryUri,
new String[] { "_id", "thread_id", "address", "person", "date",
"body", "type" }, null, null, null);
//startManagingCursor(cursor1);
String[] columns = new String[] { "_id", "thread_id", "address", "person", "date", "body",
"type" };
if (cursor1.getCount() > 0) …
Run Code Online (Sandbox Code Playgroud) 我正在尝试开发一个SMS计数器应用程序,其中我要计算当前日期的所有SMS。我不想计算收件箱中的短信总数。我正在使用以下代码,但未获得确切结果。它正在计算收件箱中的短信总数。
TextView视图=新的TextView(this);
Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,null);
/*
int nsm = 0;
while(cur.moveToNext()){
nsm+= + cur.getCount();
}
*/
String sms = "";
while ( cur.moveToNext());{
// sms += "From :" + cur.getString(2) + " : " + cur.getString(11)+"\n";
// sms += cur.getString(2);
sms += "Total SMS in the INBOX : "+cur.getCount();
}
view.setText(sms);
setContentView(view);
Run Code Online (Sandbox Code Playgroud)
我是一个新学习者。提前致谢。