我一直在尝试从 SIM 卡读取/写入,但仍然没有成功。
到目前为止,这是我的代码:
//read from sim
public String adding() {
Uri simUri = Uri.parse("content://icc/adn/");
Cursor cursorSim = this.getContentResolver().query(simUri, null, null,null, null);
String b = "";
while (cursorSim.moveToNext()) {
b+= (cursorSim.getString(cursorSim.getColumnIndex("name")));
b += "\n" + (cursorSim.getString(cursorSim.getColumnIndex("_id")));
b+= "\n" + (cursorSim.getString(cursorSim.getColumnIndex("number")));
}
return b;
}
//写入sim
public void testing4() {
ContentValues values = new ContentValues();
values.put( "tag", "test" );
values.put( "number", "1234" );
getContentResolver().insert( Uri.parse("content://icc/adn/"); , values
);
}
如果您对此有所了解,请告诉我。
谢谢
最佳答案
给usim的信中有一些拼写错误。
getContentResolver().insert(Uri.parse("content://icc/adn"), values);
此外,还应在 AndroidManifest 中添加权限。
(附带问题) 在simsalabim的源代码中,我不知道类变量“Contact”的含义。 我找不到可以导入的包。在 eclipse 中,“联系人”行中存在错误。
源码说文件content://icc/adn
是针对1.6以上的android版本,对于1.5content://sim/adn
。
(副结果) 我发现“数字”字段的大小可以超过 64 个字符。在读取过程中,可以检索到正确的值。 但是真实的手机屏幕无法显示完整的字符。
关于android - 从 Android 的 SIM 卡读/写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6785452/