怎么把微信的手机微信如何推荐好友友功能关掉

怎么把微信好友推荐给其他人_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
怎么把微信好友推荐给其他人
百家号是全球最大中文搜索引擎百度为内容创...|
总评分0.0|
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩3页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢博客分类:
http://www.uml.org.cn/mobiledev/.asp
http://blog.csdn.net/jiahui524/article/details/7785606
感谢这两位的博客:
模仿微信好友列表功能(数据从手机中读取),实现汉首字母排序筛选:
用到了一个pinyin4j-2.5.0.jar这个包
这个包的介绍:http://sourceforge.net/projects/pinyin4j/files/
其中还有一个 ContentResolver的知识点:
http://www.cnblogs.com/ruiyi1987/archive//2084925.html
这篇文章中用到这样一个查询条件:
String[] proj1=new String[]{ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.HAS_PHONE_NUMBER,
ContactsContract.Contacts.LOOKUP_KEY};
ContactsContract.Contacts已经不推荐使用,现在推荐使用phone
下面是代码:
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" &
&FrameLayout
android:id="@+id/llParent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" &
android:id="@+id/lvShow"
android:layout_width="fill_parent"
android:layout_height="fill_parent" /&
android:id="@+id/tvLetter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/show_head_toast_bg"
android:gravity="center"
android:maxWidth="70dip"
android:minWidth="70dip"
android:padding="10dip"
android:textColor="#99FFFFFF"
android:textSize="50sp" &
&/TextView&
&mypack.aaron.conact.MySideBar
android:id="@+id/myView"
android:layout_width="30dip"
android:layout_height="fill_parent"
android:layout_gravity="right" &
&/mypack.aaron.conact.MySideBar&
&/FrameLayout&
&/LinearLayout&
list_item.xml
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:descendantFocusability="blocksDescendants"
android:orientation="vertical"&
android:id="@+id/tv_catalog"
style="@style/MMListCatalog"
android:layout_height="wrap_content"
android:paddingRight="4.0dip" /&
&LinearLayout
android:id="@+id/contactitem_layout"
style="@style/MMListItem"
android:layout_height="56.0dip"
android:background="@drawable/mm_listitem"
android:paddingLeft="8.0dip" &
&ImageView
android:id="@+id/contactitem_avatar_iv"
android:layout_width="40.0dip"
android:layout_height="40.0dip" android:src="@drawable/default_avatar" /&
&LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:orientation="vertical"
android:paddingLeft="8.0dip" &
android:id="@+id/tv_nick"
style="@style/MMFontTitleInList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true" android:text="姓名" /&
android:id="@+id/tv_mobile"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:singleLine="true"
android:text=""
android:textColor="#666666" /&
&/LinearLayout&
&ImageButton
android:id="@+id/imgbtn_nav"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="5dip"
android:background="@drawable/nav_left"
android:focusable="false"
android:focusableInTouchMode="false" /&
&/LinearLayout&
&/LinearLayout&
&?xml version="1.0" encoding="utf-8"?&
&resources&
&!-- 联系分组样式 --&
&style name="MMListItem"&
&item name="android:gravity"&center_vertical&/item&
&item name="android:orientation"&horizontal&/item&
&item name="android:paddingLeft"&4.0dip&/item&
&item name="android:paddingTop"&4.0dip&/item&
&item name="android:paddingRight"&4.0dip&/item&
&item name="android:paddingBottom"&4.0dip&/item&
&item name="android:layout_width"&fill_parent&/item&
&item name="android:layout_height"&wrap_content&/item&
&style name="MMFriendListItem"&
&item name="android:gravity"&center_vertical&/item&
&item name="android:orientation"&horizontal&/item&
&item name="android:paddingLeft"&16.0dip&/item&
&item name="android:paddingTop"&6.0dip&/item&
&item name="android:paddingRight"&6.0dip&/item&
&item name="android:paddingBottom"&6.0dip&/item&
&item name="android:layout_width"&fill_parent&/item&
&item name="android:layout_height"&wrap_content&/item&
&style name="MMListCatalog"&
&item name="android:textSize"&14.0dip&/item&
&item name="android:textStyle"&bold&/item&
&item name="android:textColor"&#ff595c61&/item&
&item name="android:gravity"&center_vertical&/item&
&item name="android:orientation"&horizontal&/item&
&item name="android:background"&#ffced2d7&/item&
&item name="android:paddingLeft"&10.0dip&/item&
&item name="android:paddingTop"&2.0dip&/item&
&item name="android:paddingBottom"&2.0dip&/item&
&item name="android:layout_width"&fill_parent&/item&
&item name="android:layout_height"&wrap_content&/item&
&style name="MMFontTitleInList"&
&item name="android:textSize"&16.0dip&/item&
&item name="android:textColor"&#ff595c61&/item&
&item name="android:ellipsize"&end&/item&
&item name="android:gravity"&center_vertical&/item&
&item name="android:layout_width"&wrap_content&/item&
&item name="android:layout_height"&wrap_content&/item&
&item name="android:singleLine"&true&/item&
&style name="MMFontTipInList"&
&item name="android:textSize"&14.0dip&/item&
&item name="android:textColor"&#fff&/item&
&item name="android:ellipsize"&end&/item&
&item name="android:gravity"&center_vertical&/item&
&item name="android:layout_width"&wrap_content&/item&
&item name="android:layout_height"&wrap_content&/item&
&item name="android:singleLine"&true&/item&
&/resources&
PinyinUtils.java
这个java文件是生成汉字首字母拼音
public class PinyinUtils {
// 获得汉语拼音首字母
public static String getAlpha(String chines) {
String pinyinName = "";
char[] nameChar = chines.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i & nameChar. i++) {
if (nameChar[i] & 128) {
pinyinName += PinyinHelper.toHanyuPinyinStringArray(
nameChar[i], defaultFormat)[0].charAt(0);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
pinyinName += nameChar[i];
return pinyinN
* 将字符串中的中文转化为拼音,其他字符不变
* @param inputString
public static String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
for (int i = 0; i & input. i++) {
if (java.lang.Character.toString(input[i]).matches(
"[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(
input[i], format);
output += temp[0];
output += java.lang.Character.toString(input[i]);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
* 汉字转换位汉语拼音首字母,英文字符不变
* @param chines
* @return 拼音
public static String converterToFirstSpell(String chines) {
String pinyinName = "";
char[] nameChar = chines.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i & nameChar. i++) {
if (nameChar[i] & 128) {
pinyinName += PinyinHelper.toHanyuPinyinStringArray(
nameChar[i], defaultFormat)[0].charAt(0);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
pinyinName += nameChar[i];
return pinyinN
MySideBar.java
public class MySideBar
extends View{
OnTouchingLetterChangedListener onTouchingLetterChangedL
// 26个字母
public static String[] b = { "#", "A", "B", "C", "D", "E", "F", "G", "H",
"I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U",
"V", "W", "X", "Y", "Z" };
int choose = -1;
Paint paint = new Paint();
public MySideBar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
public MySideBar(Context context, AttributeSet attrs) {
super(context, attrs);
public MySideBar(Context context) {
super(context);
* 重写这个方法
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (showBkg) {
canvas.drawColor(Color.parseColor("#"));
int height = getHeight();
int width = getWidth();
int singleHeight = height / b.
for (int i = 0; i & b. i++) {
paint.setColor(Color.BLACK);
// paint.setColor(Color.WHITE);
paint.setTypeface(Typeface.DEFAULT_BOLD);
paint.setAntiAlias(true);
paint.setTextSize(20);
if (i == choose) {
paint.setColor(Color.parseColor("#3399ff"));
paint.setFakeBoldText(true);
float xPos = width / 2 - paint.measureText(b[i]) / 2;
float yPos = singleHeight * i + singleH
canvas.drawText(b[i], xPos, yPos, paint);
paint.reset();
private boolean showBkg =
public boolean dispatchTouchEvent(MotionEvent event) {
final int action = event.getAction();
final float y = event.getY();
final int oldChoose =
final OnTouchingLetterChangedListener listener = onTouchingLetterChangedL
final int c = (int) (y / getHeight() * b.length);
switch (action) {
case MotionEvent.ACTION_DOWN:
if (oldChoose != c && listener != null) {
if (c & 0 && c & b.length) {
listener.onTouchingLetterChanged(b[c]);
invalidate();
case MotionEvent.ACTION_MOVE:
if (oldChoose != c && listener != null) {
if (c & 0 && c & b.length) {
listener.onTouchingLetterChanged(b[c]);
invalidate();
case MotionEvent.ACTION_UP:
choose = -1;
invalidate();
public boolean onTouchEvent(MotionEvent event) {
return super.onTouchEvent(event);
* 向外公开的方法
* @param onTouchingLetterChangedListener
public void setOnTouchingLetterChangedListener(
OnTouchingLetterChangedListener onTouchingLetterChangedListener) {
this.onTouchingLetterChangedListener = onTouchingLetterChangedL
* @author coder
public interface OnTouchingLetterChangedListener {
public void onTouchingLetterChanged(String s);
public class PinyinComparator implements Comparator{
/** 按首字母排序**/
public int compare(Object o1, Object o2) {
String str1 = PinyinUtils.getPingYin((String) o1);
String str2 = PinyinUtils.getPingYin((String) o2);
return str1.compareTo(str2);
// @Override
// public int compare(Object o1, Object o2) {
String str1 = PinyinUtils.getPingYin(((UserInfo) o1).getPy());
String str2 = PinyinUtils.getPingYin(((UserInfo) o2).getPy());
return str1.compareTo(str2);
最后就是activity:
public class ContactsActivity extends Activity implements OnTouchingLetterChangedListener {
private ListView lv_
/**联系人显示名称**/
private static final int PHONES_DISPLAY_NAME_INDEX = 0;
/**电话号码**/
private static final int PHONES_NUMBER_INDEX = 1;
/**头像ID**/
private static final int PHONES_PHOTO_ID_INDEX = 2;
/**联系人的ID**/
private static final int PHONES_CONTACT_ID_INDEX = 3;
/**联系人名称**/
private ArrayList&String& mContactsName = new ArrayList&String&();
/**联系人头像**/
private ArrayList&String& mContactsNumber = new ArrayList&String&();
/**联系人头像**/
private ArrayList&Bitmap& mContactsPhonto = new ArrayList&Bitmap&();
/**拼音**/
private ArrayList&String& mPy=new ArrayList&String&();
/**左侧拼音字母**/
private MySideBar myV
/**显示到屏幕中间的拼音**/
private TextV
private OverlayThread overlayThread = new OverlayThread();
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv_list=(ListView)findViewById(R.id.lv_lsit);
overlay=(TextView)findViewById(R.id.tvLetter);
lv_list.setTextFilterEnabled(true);
overlay.setVisibility(View.INVISIBLE);//默认隐藏
myView = (MySideBar) findViewById(R.id.myView);
myView.setOnTouchingLetterChangedListener(this);
ContentResolver resolver = getContentResolver();
String[] proj1=new String[]{Phone.DISPLAY_NAME,
Phone.NUMBER,Phone.PHOTO_ID,Phone.CONTACT_ID,
Cursor curContacts=resolver.query(Phone.CONTENT_URI,proj1, null, null, null);
if(curContacts.getCount()&0){
while(curContacts.moveToNext()){
//得到手机号码
String phoneNumber = curContacts.getString(PHONES_NUMBER_INDEX);
//当手机号码为空的或者为空字段 跳过当前循环
if (TextUtils.isEmpty(phoneNumber)){
//得到联系人名称
String contactName = curContacts.getString(PHONES_DISPLAY_NAME_INDEX);
String py=PinyinUtils.getAlpha(contactName);
//得到联系人ID
Long contactid = curContacts.getLong(PHONES_CONTACT_ID_INDEX);
//得到联系人头像ID
Long photoid = curContacts.getLong(PHONES_PHOTO_ID_INDEX);
//得到联系人头像Bitamp
Bitmap contactPhoto =
//photoid 大于0 表示联系人有头像 如果没有给此人设置头像则给他一个默认的
if(photoid & 0 ) {
Uri uri =ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI,contactid);
InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(resolver, uri);
contactPhoto = BitmapFactory.decodeStream(input);
contactPhoto = BitmapFactory.decodeResource(getResources(), R.drawable.contact_photo);
mContactsName.add(contactName);
mContactsPhonto.add(contactPhoto);
mContactsNumber.add(phoneNumber);
mPy.add(py);
} Collections.sort(mContactsName, new PinyinComparator()); //ArrayList按首字母拼音排序
curContacts.close();
ListViewAdapter ltAdapter=new ListViewAdapter();
lv_list.setAdapter(ltAdapter);
/**绑定数据**/
public class ListViewAdapter extends BaseAdapter{
public int getCount() {
// TODO Auto-generated method stub
return mContactsName.size();
public Object getItem(int position) {
// TODO Auto-generated method stub
public long getItemId(int position) {
// TODO Auto-generated method stub
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater =getLayoutInflater();
// 使用View的对象itemView与R.layout.item关联
if(convertView==null){
convertView=inflater.inflate(R.layout.list_item, null);
// 通过findViewById()方法实例R.layout.item内各组件
TextView tvName = (TextView) convertView.findViewById(R.id.tv_nick);
TextView tvPhone=(TextView) convertView.findViewById(R.id.tv_mobile);
ImageView iv_pic = (ImageView) convertView.findViewById(R.id.contactitem_avatar_iv);
TextView tv_catalog=(TextView)convertView.findViewById(R.id.tv_catalog);
/*首字拼音*/
String catalog = PinyinUtils.converterToFirstSpell(mContactsName.get(position).substring(0, 1));
if(position==0){
tv_catalog.setVisibility(View.VISIBLE);
tv_catalog.setText(catalog);
/*下一个汉字首字拼音,如果两个汉字的首字母相等,下一个汉字的tv_catalog隐藏,这里其实就是把相同首字母的汉字叠加在一起*/
String lastCatalog = PinyinUtils.converterToFirstSpell(mContactsName.get(position - 1)).substring(0,1);
if (catalog.equals(lastCatalog)) {
tv_catalog.setVisibility(View.GONE);
tv_catalog.setVisibility(View.VISIBLE);
tv_catalog.setText(catalog);
tvName.setText(mContactsName.get(position));
iv_pic.setImageBitmap(mContactsPhonto.get(position));
tvPhone.setText(mContactsNumber.get(position));
return convertV
/*下面是触摸左侧拼音*/
private Handler handler = new Handler() {
private class OverlayThread implements Runnable {
public void run() {
overlay.setVisibility(View.GONE);
/**字母触摸事件**/
public void onTouchingLetterChanged(String s) {
Log.i("coder", "s:" + s);
overlay.setText(s);
overlay.setVisibility(View.VISIBLE);
handler.removeCallbacks(overlayThread);
handler.postDelayed(overlayThread, 1000);
if (alphaIndexer(s) & 0) {
int position = alphaIndexer(s);
Log.i("coder", "position:" + position);
lv_list.setSelection(position);
//根据 字母的值找到mPy存储的汉字首字母拼音的索引,listView中根据这个索引定位显示
public int alphaIndexer(String s) {
int position = 0;
for (int i = 0; i & mContactsPhonto.size(); i++) {
if (mPy.get(i).startsWith(s)) {
position =
Log.i("coder", "i" + position + mPy.get(position));
经过了手机测试成功,代码比较臃肿,还没有实现输入筛选条件查询,正在研究中
浏览: 446033 次
为什么我在主线程中定义也会出现这个bug?
Apache2.4.x版wampserver本地php服务器如 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'关闭QQ好友导入功能 微信已经“成熟”了?
新版微信中已经没有“导入QQ联系人”的选项腾讯科技 韩依民 2月2日报道“导入你的QQ好友”,以后你可能再也看不到这个微信好友的添加方式了。2月2日,最新版本的微信去掉了这一功能,此时距微信上线QQ号导入联系人功能,刚好过去五年时间。在微信的发展过程中,QQ关系链的导入被外界认为是微信在初期拥有极大竞争优势的原因,但五年之后的今天,微信选择去掉这一功能。微信产品负责人表示,微信和QQ是两个独立的帐号体系,本次去掉这个功能是考虑到近年来已经比较少人用了,可以归类为非常小众的功能需求,随着产品迭代更新,从用户体验上来考虑,微信会逐步清理一些类似的功能,如之前去掉实时对讲功能也是出于这样的考虑。日,距第一部iPhone发布已过去四年时间,也是移动互联网爆发的前夜。微信在那一天发布了针对iPhone用户的1.0测试版,该版本支持通过QQ号来导入现有的联系人资料,但仅有即时通讯、分享照片和更换头像等简单功能。彼时,APP store中国区仍是应用寥寥的旷野,在率先尝试智能手机的人群中,人们急切的需要在手机屏幕上尝试更多新鲜事物。不止是微信,同期瞄准了移动即时通讯市场的还有Talkbox、米聊,Talkbox上线三天获取了100万用户,米聊依靠当时大热的小米操作系统获得了一批拥趸,微信则还在利用QQ邮箱推广。三个初生的移动通讯APP在同样新生的移动互联网上同台竞技,QQ依旧是统治电脑桌面的即时通讯霸主。但随着微信支持通过QQ号导入联系人,在QQ强大社交关系链的帮助下,微信获得了竞争对手难以企及的优势,Talkbox、米聊以及微信的胶着局面结束,力量对比迅速走向悬殊。2011年8月,微信用户达到1500万。2012年3月,微信用户数突破1亿大关。日深夜,微信用户数突破3亿。日,微信用户数量超过6亿,日活跃用户1亿。根据腾讯2015年11月公布的2015年第三季度财报显示,该季度微信和WeChat的合并月活跃账户数达到6.50亿,而根据CNNIC在本月22日公布的第37次报告中披露的数据,截至2015年12月,中国手机网民规模为6.20亿。这意味着中国手机网民中的大多数,都会使用微信进行日常的沟通,以及体验由微信带来的更多服务。在这五年时间里,微信从无到有,并发展为移动互联网时代一个无法忽视的移动应用,成为移动互联网世界的超大入口。与之相对的是Talkbox产品的用户从400万、500万跌落,到2012年仅有100万用户,米聊也成为小众应用。此时,微信已是庞然大物,而诞生于桌面互联网时代的QQ,也在努力探索移动互联网时代的新玩法。通过空间、兴趣部落等玩法,QQ对年轻的95后依然保持着魔力。腾讯2015年第三季度财报显示,QQ月活跃账户数达到8.60亿。同时,通过接入一系列其他服务,微信已经渐渐跳脱单纯的通讯范畴。移动互联网已经是红海一片。微信早已不再是需要扶持的新生事物,在移动互联网的荒蛮时代,QQ帮助微信在发展初期取得了爆发性增长,但经历了最初到爆发到后来的稳定增长,微信从QQ导入关系链获得用户的增长空间已经不大。而彻底终结对QQ的依赖,或许意味着移动互联网已经正式走入成熟期。推广:微信搜索“BI中文站”公众号,收听来自硅谷最新鲜的科技资讯、最前沿的创业模式、最好玩的圈内故事。
[责任编辑:sonicluo]
您认为这篇文章与"新一网(08008.HK)"相关度高吗?
Copyright & 1998 - 2018 Tencent. All Rights Reserved
还能输入140字你的位置:///不小心删了微信好友怎么办 把微信好友加回来的方法
不小心删了微信好友怎么办 把微信好友加回来的方法
扫描二维码随身看资讯
1. 在手机上细细品读~
2. 分享给您的微信好友或朋友圈~
删除的微信好友还能找回来吗?不小心将好友的微信号删除了怎么办?小伙伴们不要担心,观看下文便可以轻松解决,找回您的好友。
  不用担心,这种情况是可以找回来的,可以根据不同情况进行找回,方法很多,过程也很简单,请看下文。
  微信删除的好友怎么恢复?
  1、最简单的方法就是:在微信朋友圈中找到该好友发布过的信息,这个信息是不随着你删除该好友进行删除的。
  2、第二种简单方法:如果该好友没有在朋友圈发布过微信信息,你可以查找自己的通讯录和QQ好友,如果是通过这两个方式添加的好友,应该可以在好友中找到,然后重新添加就可以了。但是这种方式适用的范围小,对于直接添加微信号码或是扫描微信二维码进行添加的好友是没有作用的。
  3、能记住对方的微信号,你可以进入微信--通讯录--打开&+&,然后&搜号码&重新添加即可,当然如果很大众化的名字会有很多重名,添加时注意分辨。
  4、邮箱找回法。如果不是彻底删除的话,可以在&已删除&中找回来。彻底删除就没得救了!在邮箱左侧---有&已删除&,点进去应该有。
  5、被动等待方法。如果对方没有删你的话,你就等待对方找你聊天,跟你说话,这时候会发现有验证提醒消息,点功过验证,哈哈你就成功了。
  6、最惨的结果就是对方的微信号要么你没有记住,要么是一堆类似外星文的字符,这时候你就需用到别的软件什么的帮助了。
  1)如果你很熟悉自己手机,而且有root的权限,可以进入微信的目录查找到好友列表的文件,从文件中找到。具体的方法就是:进入微信文件夹---找你自己使用的这个微信的帐号名---点开你的自己的帐号名,在文件夹里面找到《Audio》文件,里面全是你加过的好友帐号。
  2)下载手机版sqlite。打开sqlite,按路径进入data/data/com.tencent.mm/MicroMsg。然后:找到其中一个格式为:db的文件打开。:把打开文件里面的内容带有微信帐号的记下,然后加回去。
  3)使用手机助手,如360,腾讯的!需要微信号的一点点关键字,如果是在想不到,就查找一个自己没有删除的好友。具体方法:就把手机连到电脑,选中这个盘,然后点搜索,利用自己的计算机的搜索功能,把好友找出来或是找到这个保存名字的文件,然后将好友名字找到
标签聚合:
相关教程资讯
相关专题推荐
客官,请随便说两句
本栏浏览排行榜
装机热门软件推荐

我要回帖

更多关于 微信系统推荐好友功能 的文章

 

随机推荐