android 选择联系人匹配联系人 什么意思

android 读写联系人需要什么权限_百度知道
android 读写联系人需要什么权限
android读写联系人,读和写权限:&uses-permission android:name=&android.permission.READ_CONTACTS& /&&uses-permission android:name=&android.permission.WRITE_CONTACTS& /&
android权限系统非常庞大,在android系统中做任何操作都需要首先获取android系统权限,以下是android权限大全:访问网络android.permission.INTERNET,访问网络连接,可能产生GPRS流量android.permission.CHANGE_WIFI_STATE
Wifi 改变状态android.permission.ACCESS_WIFI_STATE WiFi 状态android.permission.ACCESS_NETWORK_STATE 网络状态录制视频android.permission.CAMERAandroid.permission.RECORD_AUDIOandroid.permission.WRITE_EXTERNAL_STORAGE底层访问权限android.permission.CWJ_GROUP,允许CWJ账户组访问底层信息手机优化大师扩展权限android.permission.CELL_PHONE_MASTER_EX,手机优化大师扩展权限控制定位更新android.permission.CONTROL_LOCATION_UPDATES,允许获得移动网络定位信息改变删除缓存文件android.permission.DELETE_CACHE_FILES,允许应用删除缓存文件删除应用android.permission.DELETE_PACKAGES,允许程序删除应用电源管理android.permission.DEVICE_POWER,允许访问底层电源管理应用诊断android.permission.DIAGNOSTIC,允许程序到RW到诊断资源禁用键盘锁android.permission.DISABLE_KEYGUARD,允许程序禁用键盘锁转存系统信息android.permission.DUMP,允许程序获取系统dump信息从系统服务状态栏控制android.permission.EXPAND_STATUS_BAR,允许程序扩展或收缩状态栏工厂测试模式android.permission.FACTORY_TEST,允许程序运行工厂测试模式使用闪光灯android.permission.FLASHLIGHT,允许访问闪光灯强制后退android.permission.FORCE_BACK,允许程序强制使用back后退按键,无论Activity是否在顶层访问账户Gmail列表android.permission.GET_ACCOUNTS,访问GMail账户列表获取应用大小android.permission.GET_PACKAGE_SIZE,获取应用的文件大小获取任务信息android.permission.GET_TASKS,允许程序获取当前或最近运行的应用允许全局搜索android.permission.GLOBAL_SEARCH,允许程序使用全局搜索功能硬件测试android.permission.HARDWARE_TEST,访问硬件辅助设备,用于硬件测试注射事件android.permission.INJECT_EVENTS,允许访问本程序的底层事件,获取按键、轨迹球的事件流安装定位提供android.permission.INSTALL_LOCATION_PROVIDER,安装定位提供安装应用程序android.permission.INSTALL_PACKAGES,允许程序安装应用内部系统窗口android.permission.INTERNAL_SYSTEM_WINDOW,允许程序打开内部窗口,不对第三方应用程序开放此权限结束后台进程android.permission.KILL_BACKGROUND_PROCESSES,允许程序调用killBackgroundProcesses(String).方法结束后台进程管理账户android.permission.MANAGE_ACCOUNTS,允许程序管理AccountManager中的账户列表管理程序引用android.permission.MANAGE_APP_TOKENS,管理创建、摧毁、Z轴顺序,仅用于系统高级权限android.permission.MTWEAK_USER,允许mTweak用户访问高级系统权限社区权限android.permission.MTWEAK_FORUM,允许使用mTweak社区权限软格式化android.permission.MASTER_CLEAR,允许程序执行软格式化,删除系统配置信息修改声音设置android.permission.MODIFY_AUDIO_SETTINGS,修改声音设置信息修改电话状态android.permission.MODIFY_PHONE_STATE,修改电话状态,如飞行模式,但不包含替换系统拨号器界面格式化文件系统android.permission.MOUNT_FORMAT_FILESYSTEMS,格式化可移动文件系统,比如格式化清空SD卡挂载文件系统android.permission.MOUNT_UNMOUNT_FILESYSTEMS,挂载、反挂载外部文件系统允许NFC通讯android.permission.NFC,允许程序执行NFC近距离通讯操作,用于移动支持永久Activityandroid.permission.PERSISTENT_ACTIVITY,创建一个永久的Activity,该功能标记为将来将被移除处理拨出电话android.permission.PROCESS_OUTGOING_CALLS,允许程序监视,修改或放弃播出电话读取日程提醒android.permission.READ_CALENDAR,允许程序读取用户的日程信息读取联系人android.permission.READ_CONTACTS,允许应用访问联系人通讯录信息屏幕截图android.permission.READ_FRAME_BUFFER,读取帧缓存用于屏幕截图读取收藏夹和历史记录com.android.browser.permission.READ_HISTORY_BOOKMARKS,读取浏览器收藏夹和历史记录读取输入状态android.permission.READ_INPUT_STATE,读取当前键的输入状态,仅用于系统读取系统日志android.permission.READ_LOGS,读取系统底层日志读取电话状态android.permission.READ_PHONE_STATE,访问电话状态读取短信内容android.permission.READ_SMS,读取短信内容读取同步设置android.permission.READ_SYNC_SETTINGS,读取同步设置,读取Google在线同步设置读取同步状态android.permission.READ_SYNC_STATS,读取同步状态,获得Google在线同步状态重启设备android.permission.REBOOT,允许程序重新启动设备开机自动允许android.permission.RECEIVE_BOOT_COMPLETED,允许程序开机自动运行接收彩信android.permission.RECEIVE_MMS,接收彩信接收短信android.permission.RECEIVE_SMS,接收短信接收Wap Pushandroid.permission.RECEIVE_WAP_PUSH,接收WAP PUSH信息录音android.permission.RECORD_AUDIO,录制声音通过手机或耳机的麦克排序系统任务android.permission.REORDER_TASKS,重新排序系统Z轴运行中的任务结束系统任务android.permission.RESTART_PACKAGES,结束任务通过restartPackage(String)方法,该方式将在外来放弃发送短信android.permission.SEND_SMS,发送短信设置Activity观察其android.permission.SET_ACTIVITY_WATCHER,设置Activity观察器一般用于monkey测试设置闹铃提醒com.android.alarm.permission.SET_ALARM,设置闹铃提醒设置总是退出android.permission.SET_ALWAYS_FINISH,设置程序在后台是否总是退出设置动画缩放android.permission.SET_ANIMATION_SCALE,设置全局动画缩放设置调试程序android.permission.SET_DEBUG_APP,设置调试程序,一般用于开发设置屏幕方向android.permission.SET_ORIENTATION,设置屏幕方向为横屏或标准方式显示,不用于普通应用设置应用参数android.permission.SET_PREFERRED_APPLICATIONS,设置应用的参数,已不再工作具体查看addPackageToPreferred(String)介绍设置进程限制android.permission.SET_PROCESS_LIMIT,允许程序设置最大的进程数量的限制设置系统时间android.permission.SET_TIME,设置系统时间设置系统时区android.permission.SET_TIME_ZONE,设置系统时区设置桌面壁纸android.permission.SET_WALLPAPER,设置桌面壁纸设置壁纸建议android.permission.SET_WALLPAPER_HINTS,设置壁纸建议发送永久进程信号android.permission.SIGNAL_PERSISTENT_PROCESSES,发送一个永久的进程信号状态栏控制android.permission.STATUS_BAR,允许程序打开、关闭、禁用状态栏访问订阅内容android.permission.SUBSCRIBED_FEEDS_READ,访问订阅信息的数据库写入订阅内容android.permission.SUBSCRIBED_FEEDS_WRITE,写入或修改订阅内容的数据库显示系统窗口android.permission.SYSTEM_ALERT_WINDOW,显示系统窗口更新设备状态android.permission.UPDATE_DEVICE_STATS,更新设备状态使用证书android.permission.USE_CREDENTIALS,允许程序请求验证从AccountManager使用SIP视频android.permission.USE_SIP,允许程序使用SIP视频服务使用振动android.permission.VIBRATE,允许振动唤醒锁定android.permission.WAKE_LOCK,允许程序在手机屏幕关闭后后台进程仍然运行写入GPRS接入点设置android.permission.WRITE_APN_SETTINGS,写入网络GPRS接入点设置写入日程提醒android.permission.WRITE_CALENDAR,写入日程,但不可读取写入联系人android.permission.WRITE_CONTACTS,写入联系人,但不可读取写入外部存储android.permission.WRITE_EXTERNAL_STORAGE,允许程序写入外部存储,如SD卡上写文件写入Google地图数据android.permission.WRITE_GSERVICES,允许程序写入Google Map服务数据写入收藏夹和历史记录com.android.browser.permission.WRITE_HISTORY_BOOKMARKS,写入浏览器历史记录或收藏夹,但不可读取读写系统敏感设置android.permission.WRITE_SECURE_SETTINGS,允许程序读写系统安全敏感的设置项读写系统设置android.permission.WRITE_SETTINGS,允许读写系统设置项编写短信android.permission.WRITE_SMS,允许编写短信写入在线同步设置android.permission.WRITE_SYNC_SETTINGS,写入Google在线同步设置&uses-permission android:name=&android.permission.ACCESS_WIFI_STATE&/&访问登记属性android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限获取错略位置android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~1500米获取精确位置android.permission.ACCESS_FINE_LOCATION,通过GPS芯片接收卫星的定位信息,定位精度达10米以内访问定位额外命令android.permission.ACCESS_LOCATION_EXTRA_COMMANDS,允许程序访问额外的定位提供者指令 GPS定位获取模拟定位信息android.permission.ACCESS_MOCK_LOCATION,获取模拟定位信息,一般用于帮助开发者调试应用获取网络状态android.permission.ACCESS_NETWORK_STATE,获取网络信息状态,如当前的网络连接是否有效访问Surface Flingerandroid.permission.ACCESS_SURFACE_FLINGER,Android平台上底层的图形显示支持,一般用于游戏或照相机预览界面和底层模式的屏幕截图获取WiFi状态android.permission.ACCESS_WIFI_STATE,获取当前WiFi接入的状态以及WLAN热点的信息账户管理android.permission.ACCOUNT_MANAGER,获取账户验证信息,主要为GMail账户信息,只有系统级进程才能访问的权限验证账户android.permission.AUTHENTICATE_ACCOUNTS,允许一个程序通过账户验证方式访问账户管理ACCOUNT_MANAGER相关信息电量统计android.permission.BATTERY_STATS,获取电池电量统计信息绑定小插件android.permission.BIND_APPWIDGET,允许一个程序告诉appWidget服务需要访问小插件的数据库,只有非常少的应用才用到此权限绑定设备管理android.permission.BIND_DEVICE_ADMIN,请求系统管理员接收者receiver,只有系统才能使用绑定输入法android.permission.BIND_INPUT_METHOD ,请求InputMethodService服务,只有系统才能使用绑定RemoteViewandroid.permission.BIND_REMOTEVIEWS,必须通过RemoteViewsService服务来请求,只有系统才能用绑定壁纸android.permission.BIND_WALLPAPER,必须通过WallpaperService服务来请求,只有系统才能用使用蓝牙android.permission.BLUETOOTH,允许程序连接配对过的蓝牙设备蓝牙管理android.permission.BLUETOOTH_ADMIN,允许程序进行发现和配对新的蓝牙设备变成砖头android.permission.BRICK,能够禁用手机,非常危险,顾名思义就是让手机变成砖头应用删除时广播android.permission.BROADCAST_PACKAGE_REMOVED,当一个应用在删除时触发一个广播收到短信时广播android.permission.BROADCAST_SMS,当收到短信时触发一个广播连续广播android.permission.BROADCAST_STICKY,允许一个程序收到广播后快速收到下一个广播WAP PUSH广播android.permission.BROADCAST_WAP_PUSH,WAP PUSH服务收到后触发一个广播拨打电话android.permission.CALL_PHONE,允许程序从非系统拨号器里输入电话号码通话权限android.permission.CALL_PRIVILEGED,允许程序拨打电话,替换系统的拨号器界面拍照权限android.permission.CAMERA,允许访问摄像头进行拍照改变组件状态android.permission.CHANGE_COMPONENT_ENABLED_STATE,改变组件是否启用状态改变配置android.permission.CHANGE_CONFIGURATION,允许当前应用改变配置,如定位改变网络状态android.permission.CHANGE_NETWORK_STATE,改变网络状态如是否能联网改变WiFi多播状态android.permission.CHANGE_WIFI_MULTICAST_STATE,改变WiFi多播状态改变WiFi状态android.permission.CHANGE_WIFI_STATE,改变WiFi状态清除应用缓存android.permission.CLEAR_APP_CACHE,清除应用缓存清除用户数据android.permission.CLEAR_APP_USER_DATA,清除应用的用户数据
其他类似问题
为您推荐:
提问者采纳
用360手机助手与电脑的360手机助手连接将需要的通讯录进行备份备份到电脑以后自己可以随意修改比如你备份的通讯录本来是11位的手机号码姓名为张山那么你可以直接给他修订厂斥断俪登筹券船猾改成姓名为忍者神龟或者110姓名为匪警电话或者12345姓名为炮炮兵修改完成之后再恢复到通讯录即可如果不知道怎么操作的话可以继续回复并提高悬赏我给你图文教程是现给你做
来自团队:
其他1条回答
出现会话时允许的权限,需要用户自己操作称它订厂斥断俪登筹券船猾为预授权的Dialog,拿获取通讯录联系人的例子来说,在每次真正要执行获取联系人操作之前,先show一个Dialog,用来告诉用户准备要获取联系人了(比如要获取用户联系人信息干什么,先让用户了解),如果用户点『允许』,此时才执行真正获取联系人的操作,执行获取联系人操作的时候,一些系统或者XX助手会提示用户是否允许,此时用户多半会选择允许的,因为用户已经知道这个App为什么要获取通讯录数据,否则它在预授权的Dialog里面就不会点『允许』。那么用户如果点了『拒绝』,那App就不要去读联系人了,等下次用户再使用这个功能的时候,再show这个预授权Dialog。
android的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁| 漏洞检测 |
| 隐藏捆绑 |
android 添加MCCMNC自动号码匹配后拨号匹配不到联系人
由于不同的sim卡对应不同的mccmnc, 导致min_match的发生变化, 新的min_match与之前phone_lookup表中保存的min_match不一直,导致无法匹配上。 修改如下: 1. 添加URI 修改ContactsProvider2.java, private static final int PHONE_LOOKUP = 4000; 下面加入一
由于不同的sim卡对应不同的mccmnc, 导致min_match的值发生变化,
新的min_match值与之前phone_lookup表中保存的min_match不一直,导致无法上。
修改ContactsProvider2.java,
private static final int PHONE_LOOKUP = 4000;
下面加入一行:
private static final int PHONE_LOOKUP2 = 4001;
// New Add
matcher.addURI(ContactsContract.AUTHORITY, "provider_status", PROVIDER_STATUS);
下面加入一行:
matcher.addURI(ContactsContract.AUTHORITY, "phone_lookup2", PHONE_LOOKUP2);
// New Add
2. 实现处理对应URI的方法
修改contactsProvider2.java 的 updateInTransaction().
case PHONE_LOOKUP2:
final SQLiteDatabase mDb = mDbHelper.get().getWritableDatabase();
Cursor c = mDb.query(Tables.PHONE_LOOKUP,
new String[]{ PhoneLookupColumns.DATA_ID,
PhoneLookupColumns.RAW_CONTACT_ID,
PhoneLookupColumns.NORMALIZED_NUMBER,
PhoneLookupColumns.MIN_MATCH },
null, null, null, null, null);
while(c.moveToNext()) {
long dataId = c.getLong(0);
long rawContactId = c.getLong(1);
String normalizeNumber = c.getString(2);
String oldMinMatch = c.getString(3);
ContentValues phoneValues = new ContentValues();
phoneValues.put(PhoneLookupColumns.RAW_CONTACT_ID, rawContactId);
phoneValues.put(PhoneLookupColumns.DATA_ID, dataId);
phoneValues.put(PhoneLookupColumns.NORMALIZED_NUMBER, normalizeNumber);
// get minMatch
Log.d(TAG, "[PHONE_LOOKUP2]1.normalizeNumber:" + normalizeNumber);
String minMatch = PhoneNumberUtils.toCallerIDMinMatch(normalizeNumber);
phoneValues.put(PhoneLookupColumns.MIN_MATCH, minMatch);
Log.d(TAG, "[PHONE_LOOKUP2]2.normalizeNumber:" + normalizeNumber + "
oldMinMatch:" + oldMinMatch + "
minMatch:" + minMatch);
mDb.update(Tables.PHONE_LOOKUP, phoneValues, PhoneLookupColumns.DATA_ID + "=" + dataId + " AND " + PhoneLookupColumns.RAW_CONTACT_ID + "=" + rawContactId, null);
c.close();
3. 启动更新phone_lookup表的min_match
------------[JB 4.2]------------
修改Contacts包下的AbstractStartSIMService.java
Case FINISH_IMPORTING 这个case下面的 break 前面的 canStopSelf()之前加入如下代码:
if (canStopSelf) {
Log.i(TAG, "Will call stopSelf here.")
// New add
ContentResolver contentResolver = mContext.getContentResolver();
Uri uri = Uri.parse("content://com..contacts/phone_lookup2");
contentResolver.update(uri, new ContentValues(), null, null);
stopSelf();
------------[KK 4.4]------------
修改SIMProcessorManager.java,SIMProcessorManager() --> handleMessage(),
在callStopService()之前加入如下代码:
LogUtils.d(TAG, "handleMessage MSF_SEND_STOP_SERVICE");
// New add
ContentResolver contentResolver = mContext.getContentResolver();
Uri uri = Uri.parse("content://com..contacts/phone_lookup2");
contentResolver.update(uri, new ContentValues(), null, null);
callStopService();
(责任编辑:幽灵学院)
------分隔线----------------------------
场长挪用千万公款赴(澳门赌博网站) 坚信小赌怡情,大赌伤身 中国江西网讯 王倩、记...
最近携程开源了一套动态加载的框架,总的来说,该框架和OpenAtlas还是有一定的相似之...
apktool 反编译APK 使用apktool d ,默认会生成和APK文件名同名的文件夹,里面会存放反...
话说一个乞丐在看一个程序员写程序,程序员遇到一个问题怎么都解决不了,这时乞丐说这...
本节引言: 最近一段时间因为工作上的事以及面试等等,耽误了博客的更新,这里道歉下~...
美团的下拉刷新分为三个状态: 第一个状态为下拉刷新状态(pull to refresh),在这个状...
admin@1744.cc
工作日:9:00-21:00
周 六:9:00-18:00
&&扫一扫关注幽灵学院
广告服务:QQ:发送私信成功
DevStore用户登录
还没有DevStore帐号?
快捷登录:
您目前的活力值不够下载该资源哦~~
怎么样快速获得活力值?
下载此资源将扣除活力值-20
(只在首次下载扣除活力值,之后可以免费下载)
为了尽快解决大伙儿的问题,请务必要找相对应的客服哦~
DevStore贯穿项目生命周期,解决你的所有问题
> 源码详情
【Android】实现联系人效果
16:42 && 浏览量(2529) &&
功能分类:特效
支持平台:Android
运行环境:Eclipse
开发语言:Java
开发工具:Eclipse
源码大小:1.28MB
866 人下载
实现了联系人字母查询、汉字查询效果。
DevStore所有源码来自用户上传分享,版权问题及牵扯到商业纠纷均与DevStore无关。
public class MainActivity extends Activity {
private ListView sortListV
private SideBar sideB
private TextV
private SortA
private ClearEditText mClearEditT
* 汉字转换成拼音的类
private CharacterParser characterP
private List SourceDateL
* 根据拼音来排列ListView里面的数据类
private PinyinComparator pinyinC
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initViews();
private void initViews() {
// 实例化汉字转拼音类
characterParser = CharacterParser.getInstance();
pinyinComparator = new PinyinComparator();
sideBar = (SideBar) findViewById(R.id.sidrbar);
dialog = (TextView) findViewById(R.id.dialog);
sideBar.setTextView(dialog);
// 设置右侧触摸监听
sideBar.setOnTouchingLetterChangedListener(new OnTouchingLetterChangedListener() {
public void onTouchingLetterChanged(String s) {
// 该字母首次出现的位置
int position = adapter.getPositionForSection(s.charAt(0));
if (position != -1) {
sortListView.setSelection(position);
sortListView = (ListView) findViewById(R.id.country_lvcountry);
sortListView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View view,
int position, long id) {
// 这里要利用adapter.getItem(position)来获取当前position所对应的对象
Toast.makeText(getApplication(),
((SortModel) adapter.getItem(position)).getName(),
Toast.LENGTH_SHORT).show();
SourceDateList = filledData(getResources().getStringArray(R.array.date));
// 根据a-z进行排序源数据
Collections.sort(SourceDateList, pinyinComparator);
adapter = new SortAdapter(this, SourceDateList);
sortListView.setAdapter(adapter);
mClearEditText = (ClearEditText) findViewById(R.id.filter_edit);
// 根据输入框输入值的改变来过滤搜索
mClearEditText.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// 当输入框里面的值为空,更新为原来的列表,否则为过滤数据列表
filterData(s.toString());
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
public void afterTextChanged(Editable s) {
* 为ListView填充数据
* @param date
private List filledData(String[] date) {
List mSortList = new ArrayList();
for (int i = 0; i < date. i++) {
SortModel sortModel = new SortModel();
sortModel.setName(date[i]);
// 汉字转换成拼音
String pinyin = characterParser.getSelling(date[i]);
String sortString = pinyin.substring(0, 1).toUpperCase();
// 正则表达式,判断首字母是否是英文字母
if (sortString.matches("[A-Z]")) {
sortModel.setSortLetters(sortString.toUpperCase());
sortModel.setSortLetters("#");
mSortList.add(sortModel);
return mSortL
* 根据输入框中的值来过滤数据并更新ListView
* @param filterStr
private void filterData(String filterStr) {
List filterDateList = new ArrayList();
if (TextUtils.isEmpty(filterStr)) {
filterDateList = SourceDateL
filterDateList.clear();
for (SortModel sortModel : SourceDateList) {
String name = sortModel.getName();
if (name.indexOf(filterStr.toString()) != -1
|| characterParser.getSelling(name).startsWith(
filterStr.toString())) {
filterDateList.add(sortModel);
// 根据a-z进行排序
Collections.sort(filterDateList, pinyinComparator);
adapter.updateListView(filterDateList);
下载(866)
获取活力值
源码上传作者
资料下载排行
开发者交流群:
DevStore技术交流群2:
运营交流群:
产品交流群:
深圳尺子科技有限公司
深圳市南山区蛇口网谷万海大厦C栋504
Copyright (C) 2015 DevStore. All Rights Reserved

我要回帖

更多关于 安卓联系人匹配 的文章

 

随机推荐