精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

iOS開發(fā)之《歸屬地查詢》軟件的拋磚引玉

移動開發(fā) iOS
學習iOS開發(fā)有一段時間了,可能很多人也會有一樣的想法,究竟自己現(xiàn)在能寫出點什么看上去能算是應用的程序,我在左思右想之后,用了8個小時,寫了這個歸屬地查詢軟件,我想說的是,這個軟件從代碼上看其實很簡單,學了iOS開發(fā)一段時間的人都應該能寫出來,無非就是從一個textfield接收一個電話號碼,之后對電話號碼稍加轉換,之后是用數(shù)據(jù)庫查詢。

學習iOS開發(fā)有一段時間了,可能很多人也會有一樣的想法,究竟自己現(xiàn)在能寫出點什么看上去能算是應用的程序,我在左思右想之后,用了8個小時,寫了這個歸屬地查詢軟件,我想說的是,這個軟件從代碼上看其實很簡單,學了iOS開發(fā)一段時間的人都應該能寫出來,無非就是從一個textfield接收一個電話號碼,之后對電話號碼稍加轉換,之后是用數(shù)據(jù)庫查詢。

在這里呢,我們輸入的號碼,無非就是幾種(可能是客服電話,10XXXX;可能是固話:0XXxxxxxxxx,和0XXXxxxxxxxx,這里我們允許用戶只輸入?yún)^(qū)號(0XX,0XXX);可能是移動電話:1XXxxxxxxxx,861XXxxxxxxxx,+861XXxxxxxxxx,這里我們同樣允許用戶輸入電話號碼的前7位,即(1XXxxxx,861XXxxxx,+861XXxxxx)),其余輸入我們一律視為格式不正確輸入,顯示內容為:輸入的手機號碼,歸屬地,運營商,城市區(qū)號;

我們需要一個數(shù)據(jù)庫,如果想做做練習,大家可以自己隨便寫一個數(shù)據(jù)庫,

這里我會為大家展示一些核心的代碼:

***段代碼:拷貝數(shù)據(jù)庫

 

  1. -(void)DoCopyDatabase{ 
  2.     NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory,NSUserDomainMask, YES);  
  3.     NSString *documentsDirectory = [paths objectAtIndex:0];      
  4.     NSString *documentLibraryFolderPath = [documentsDirectory stringByAppendingPathComponent:@"location_Numbercity_citynumber.db"];  
  5.     if ([[NSFileManager defaultManager] fileExistsAtPath:documentLibraryFolderPath]) {  
  6.     }else {  
  7.         NSString *resourceSampleImagesFolderPath =[[NSBundle mainBundle]  
  8.                                                    pathForResource:@"location_Numbercity_citynumber"  
  9.                                                    ofType:@"db"];  
  10.         NSData *mainBundleFile = [NSData dataWithContentsOfFile:resourceSampleImagesFolderPath];  
  11.         [[NSFileManager defaultManager] createFileAtPath:documentLibraryFolderPath  
  12.                                                 contents:mainBundleFile  
  13.                                               attributes:nil]; 
  14.     } 

這段代碼,在Documents文件夾下沒有我們的數(shù)據(jù)庫的時候將數(shù)據(jù)庫拷貝到該位置。

第二段代碼:數(shù)據(jù)的整理操作

 

  1. - (IBAction)SearchButton:(id)sender { 
  2.     [textfieldyourphonenumber resignFirstResponder]; 
  3.     mylabelmobile.text = @""
  4.     mylabellocation.text = @""
  5.     mylabelphonenumber.text = @""
  6.     mylabelzonecode.text = @""
  7.      
  8.     NSString *findPhonenumber = @""
  9.     NSString *findPhoneNumberMobile = @""
  10.     NSString *findPhoneNumberIsACall = @""
  11.     NSString *findPhoneNumberIsMobile = @""
  12.      
  13.     NSInteger phonenumberlength = [textfieldyourphonenumber.text length]; 
  14.     if (phonenumberlength == 3 || 
  15.         phonenumberlength == 4 || 
  16.         phonenumberlength == 5 || 
  17.         phonenumberlength == 7 || 
  18.         phonenumberlength == 11||  
  19.         phonenumberlength == 12|| 
  20.         phonenumberlength == 13|| 
  21.         phonenumberlength == 14)  
  22.     { 
  23.         NSString *tempstring = textfieldyourphonenumber.text; 
  24.         if ((phonenumberlength == 14) && ([tempstring characterAtIndex:0] == '+') &&([tempstring characterAtIndex:1] == '8')&&([tempstring characterAtIndex:2] == '6')&&([tempstring characterAtIndex:3] == '1'))  
  25.         { 
  26.             NSMutableString *tempstring02 = [NSMutableString stringWithString:tempstring]; 
  27.             NSRange range; 
  28.             range.location = 0; 
  29.             range.length = 3; 
  30.             [tempstring02 deleteCharactersInRange:range]; 
  31.             NSString *tempstring03 = [tempstring02 stringByPaddingToLength:7 withString:nil startingAtIndex:0]; 
  32.             NSString *findPhonenumberFull = [tempstring02 stringByPaddingToLength:11 withString:nil startingAtIndex:0]; 
  33.             mylabelphonenumber.text = findPhonenumberFull; 
  34.             findPhoneNumberMobile = [tempstring02 stringByPaddingToLength:3 withString:nil startingAtIndex:0]; 
  35.             findPhonenumber = tempstring03; 
  36.         }else if 
  37. }else if (((phonenumberlength == 12) && ([tempstring characterAtIndex:0] == '0'))||((phonenumberlength == 4) && ([tempstring characterAtIndex:0] == '0'))) { 
  38.             NSMutableString *tempstring02 = [NSMutableString stringWithString:tempstring]; 
  39.             mylabelphonenumber.text = tempstring02; 
  40.             NSMutableString *tempstring03 = [[NSMutableString alloc] initWithCapacity:1]; 
  41.             [tempstring03 appendString:[tempstring02 stringByPaddingToLength:4 withString:nil startingAtIndex:0]]; 
  42.             mylabelzonecode.text = tempstring03; 
  43.             NSRange range; 
  44.             range.location = 0; 
  45.             range.length = 1; 
  46.             [tempstring03 deleteCharactersInRange:range]; 
  47.             findPhoneNumberIsACall = tempstring03; 
  48.         }else if 
  49. }else if ((phonenumberlength == 5) &&([tempstring characterAtIndex:0] == '1')) { 
  50.             mylabelphonenumber.text = tempstring; 
  51.             findPhoneNumberIsMobile = tempstring; 
  52.         }else { 
  53.             [self PhoneNumberError]; 
  54.         } 
  55.     }else { 
  56.         [self PhoneNumberError]; 
  57.     } 
  58.     if ([findPhonenumber length] ==7 && [findPhoneNumberMobile length] ==3)  
  59.     { 
  60.         [self SelectInfoByPhone:findPhonenumber WithMobile:findPhoneNumberMobile]; 
  61.     }else if ([findPhoneNumberIsACall length] == 3||[findPhoneNumberIsACall length] == 4) 
  62.     { 
  63.         [self SelectInfoByCall:findPhoneNumberIsACall]; 
  64.  
  65.     }else if ([findPhoneNumberIsMobile length] == 5) 
  66.     { 
  67.         NSInteger findPhoneNumberIsMobileInt = [findPhoneNumberIsMobile intValue]; 
  68.         [self SelectInfoByPhoneNumberIsMobile:findPhoneNumberIsMobileInt]; 
  69.     } 
  70.     textfieldyourphonenumber.text = @""

這里我為大家展示了部分對數(shù)據(jù)操作代碼,省略的代碼與其他大同小異,所以我們就提供一個特殊的5位,和移動電話,和固話,各一段操作。

第三段代碼:查詢數(shù)據(jù)庫

 

  1. -(void)SelectInfoByPhone:(NSString *)phonenumber WithMobile:(NSString *)phonemobile 
  2.     NSString *SelectWhatMobile = @"SELECT mobile FROM numbermobile where uid="
  3.     NSString *SelectWhatMobileFull = [SelectWhatMobile stringByAppendingFormat:phonemobile]; 
  4.     sqlite3 *database; 
  5.     if (sqlite3_open([[self FindDatabase] UTF8String], &database) 
  6.         != SQLITE_OK) { 
  7.         sqlite3_close(database); 
  8.         NSAssert(0, @"Failed to open database"); 
  9.     } 
  10.     sqlite3_stmt *stmt; 
  11.     if (sqlite3_prepare_v2(database, [SelectWhatMobileFull UTF8String], -1, &stmt, nil) == SQLITE_OK) { 
  12.         while (sqlite3_step(stmt) == SQLITE_ROW) { 
  13.             int mobilenumber = sqlite3_column_int(stmt, 0); 
  14.             if (mobilenumber) { 
  15.                 NSString *mobileNumberString = [NSString stringWithFormat:@"%d",mobilenumber]; 
  16.                 NSString *SelectWhatMobileName = @"SELECT mobile FROM mobilenumber WHERE uid="
  17.                 NSString *SelectWhatMobileNameFull = [SelectWhatMobileName stringByAppendingFormat:mobileNumberString]; 
  18.                 sqlite3_stmt *stmt2; 
  19.                 if (sqlite3_prepare_v2(database, [SelectWhatMobileNameFull UTF8String], -1, &stmt2, nil) == SQLITE_OK) { 
  20.                     while (sqlite3_step(stmt2) == SQLITE_ROW) { 
  21.                         char *mobilename = (char *)sqlite3_column_text(stmt2, 0); 
  22.                         NSString *mobilenamestring = [[NSString alloc] initWithUTF8String:mobilename]; 
  23.                         if (mobilenamestring!= NULL) { 
  24.                             mylabelmobile.text = mobilenamestring; 
  25.                         } 
  26.                     } 
  27.                 }sqlite3_finalize(stmt2); 
  28.                  
  29.             } 
  30.         } 
  31.         sqlite3_finalize(stmt); 
  32.     } 
  33.     sqlite3_stmt *stmt3; 
  34.     NSString *SelectCityNumberByPhoneNumber = @"SELECT city FROM phonenumberwithcity WHERE uid="
  35.     NSString *SelectCityNumberByPhoneNumberFull = [SelectCityNumberByPhoneNumber stringByAppendingFormat:phonenumber]; 
  36.     if (sqlite3_prepare_v2(database, [SelectCityNumberByPhoneNumberFull UTF8String], -1, &stmt3, nil) == SQLITE_OK) { 
  37.         if (sqlite3_step(stmt3) == SQLITE_ROW) { 
  38.             int citynumber = sqlite3_column_int(stmt3, 0); 
  39.             NSString *citynumberNSString = [NSString stringWithFormat:@"%d",citynumber];  
  40.             if (citynumberNSString != nil) { 
  41.                 NSString *SelectCityNameAndCtiyZoneByCityBumber = @"SELECT city,zone FROM citywithnumber WHERE uid="
  42.                 NSString *SelectCityNameAndCtiyZoneByCityBumberFull = [SelectCityNameAndCtiyZoneByCityBumber stringByAppendingFormat:citynumberNSString]; 
  43.                 sqlite3_stmt *stmt4; 
  44.                 if (sqlite3_prepare_v2(database, [SelectCityNameAndCtiyZoneByCityBumberFull UTF8String], -1, &stmt4, nil) == SQLITE_OK) { 
  45.                     if (sqlite3_step(stmt4) == SQLITE_ROW) { 
  46.                         char *cityname = (char *)sqlite3_column_text(stmt4, 0); 
  47.                         int cityzonecode = sqlite3_column_int(stmt4, 1); 
  48.                         NSString *cityNameNSString = [[NSString alloc] initWithUTF8String:cityname]; 
  49.                         NSString *cityzonecodeNnumber = [@"0" stringByAppendingFormat:@"%d",cityzonecode]; 
  50.                         if (cityNameNSString != nil && cityzonecodeNnumber != nil) { 
  51.                             mylabellocation.text = cityNameNSString; 
  52.                             mylabelzonecode.text = cityzonecodeNnumber; 
  53.                         } 
  54.                     }else { 
  55.                         [self PhoneNumberError]; 
  56.                     } 
  57.                     sqlite3_finalize(stmt4); 
  58.                 } 
  59.             } 
  60.         }else { 
  61.             [self PhoneNumberError]; 
  62.         } 
  63.         sqlite3_finalize(stmt3); 
  64.     } 
  65.      
  66.     sqlite3_close(database); 
  67.      
  68.      
  69.      

上面代碼,對移動電話的查詢方法

同樣我們還有-(void)SelectInfoByCall:(NSString *) callnumber和-(void)SelectInfoByPhoneNumberIsMobile:(NSInteger)PhoneNumberIsMobile

在這里我不做太多的講解,因為在程序內使用的都是特別基礎的語法,我們還可以再繼續(xù)寫下去,比如添加讀取最近的10條通話,供用戶選擇等等等等,程序運行圖片我會在周一為大家添加上

責任編輯:張葉青 來源: 開源社區(qū)
相關推薦

2016-12-02 19:14:16

數(shù)據(jù)科學大數(shù)據(jù)

2010-07-01 09:38:31

jQuery

2009-06-26 15:56:26

2015-10-15 09:33:55

3Dtouch蘋果游戲開發(fā)

2023-09-14 15:37:11

2011-03-11 15:31:52

數(shù)據(jù)中心虛擬接入

2010-04-12 16:24:15

Oracle表查詢

2010-06-18 13:56:10

SQL Server日

2009-10-09 14:24:27

2009-05-18 10:57:35

.NETString特性

2014-06-17 09:42:05

軟件開發(fā)軟件設計

2022-07-20 15:10:38

Docker大數(shù)據(jù)平臺

2009-08-24 09:55:24

C#集成開發(fā)環(huán)境

2012-06-12 09:53:14

HTML5

2010-10-26 09:23:03

Web Service

2016-10-14 13:10:35

2009-07-01 09:41:00

無線路由器固件番茄固件

2010-07-23 16:03:36

SQL Server存

2010-07-13 15:29:24

SQL Server

2010-08-23 09:49:53

.NET 4
點贊
收藏

51CTO技術棧公眾號

亚洲日本欧美在线| 国产欧美精品日韩| 国产三级国产精品| 国产成人精品一区二区三区在线| 亚洲视频狠狠干| 国精产品一区二区| 在线视频免费观看一区| 在线精品一区二区| 中文字幕欧美日韩在线| 午夜性福利视频| 午夜av成人| 亚洲成人综合在线| 亚洲精品视频一二三| 亚洲精品成av人片天堂无码 | 日韩精品免费一区二区三区竹菊| 欧美午夜精品久久久久久孕妇| 国产精品免费看久久久无码| 国产一区精品| 成人一区二区在线观看| 国产精品一区二区久久久久| 日韩三级小视频| 久久久久久久久丰满| 亚洲男人的天堂在线| 波多野结衣中文字幕在线播放| 亚洲第一会所| 日韩欧美中文在线| 日韩欧美精品免费| 成人在线app| 国产精品拍天天在线| 美脚丝袜一区二区三区在线观看| www.com欧美| 久久99久久99精品免视看婷婷| 欧美一区二区.| 精品无码av在线| 亚洲一区二区| 日韩综合视频在线观看| 亚洲精品91在线| 久久最新网址| 日韩精品免费综合视频在线播放| 97精品人人妻人人| 精品视频在线播放一区二区三区 | 成人区精品一区二区婷婷| 日韩成人在线视频观看| 无码人妻精品一区二区三| 韩国一区二区三区视频| 91麻豆精品国产自产在线 | 国产一区二区三区丝袜 | www.99视频| 国产成人综合视频| 99热国产免费| 性一交一乱一伧老太| 国产精品一区二区男女羞羞无遮挡| 成人深夜直播免费观看| 一级黄色大片网站| 久久99精品国产麻豆不卡| 国产精品一久久香蕉国产线看观看| 国产美女www| 蜜桃精品在线观看| 国产欧美日韩中文字幕在线| 一级特黄aaa大片在线观看| 免费高清在线一区| 成人国产精品久久久久久亚洲| 一级全黄裸体免费视频| 麻豆精品视频在线观看免费| 国产中文欧美精品| wwwxxxx国产| 成人高清在线视频| 另类视频在线观看+1080p| 欧美成人片在线| 国产日产欧美一区| 精品国产无码在线| 美女日批视频在线观看| 欧美日韩一区二区三区在线免费观看| 日韩一级免费在线观看| 台湾天天综合人成在线| 欧美成人三级电影在线| 青青草视频成人| 99久久久久国产精品| 九九热精品视频国产| 免费日韩一级片| 免费观看成人av| 91蜜桃网站免费观看| 日韩一级片免费在线观看| 2021中文字幕一区亚洲| 亚洲人成网站在线播放2019| 欧洲性视频在线播放| 精品露脸国产偷人在视频| xxxx一级片| 一区二区三区四区高清视频| 亚洲女人天堂成人av在线| 久久久国产一级片| 韩日成人在线| 国产精品女主播| 亚洲精品久久久蜜桃动漫| 久久精品一区二区三区av| 91制片厂免费观看| 手机在线观看av| 在线不卡中文字幕| 性色av蜜臀av色欲av| 99久久精品网| 人人澡人人澡人人看欧美| 国产精品羞羞答答在线| 97se亚洲国产综合自在线观| 天天成人综合网| 亚洲女同av| 日韩免费观看高清完整版在线观看| av网站免费在线播放| 亚洲国产不卡| 国产精品99久久久久久久久久久久 | 在线观看日本黄色| 亚洲每日在线| 成人性生交大片免费看小说| 男同在线观看| 亚洲线精品一区二区三区 | 国产高清无密码一区二区三区| 欧美日韩高清在线一区| 污视频在线免费观看网站| 在线视频中文字幕一区二区| 色综合久久五月| 91精品蜜臀一区二区三区在线| 人人做人人澡人人爽欧美| 囯产精品久久久久久| 18成人在线视频| 中文字幕在线观看第三页| 女同久久另类99精品国产| 欧美成人亚洲成人日韩成人| 亚洲性生活大片| 久久久三级国产网站| 欧美亚洲国产成人| 51亚洲精品| 欧美大荫蒂xxx| 97在线播放免费观看| 日本一区二区三区四区在线视频| 性欧美大战久久久久久久| 一区二区视频| 欧美国产精品日韩| 国产精品久久久久毛片| 欧美国产一区视频在线观看| 欧美黄色一级片视频| 日韩av午夜| 91黑丝高跟在线| 亚洲成人久久精品| 亚洲男人的天堂网| 久久99爱视频| 日韩精品一区二区久久| 国产精品日韩欧美| 国产黄色片在线播放| 在线视频国内一区二区| 日本激情小视频| 丝袜亚洲精品中文字幕一区| 欧洲亚洲一区二区| 97欧美成人| 色哟哟入口国产精品| 在线免费观看一级片| 国产精品网曝门| www.com黄色片| 天天射成人网| 91久久国产自产拍夜夜嗨| 欧洲黄色一区| 亚洲精品久久久久中文字幕二区| 日韩视频免费观看高清| av一本久道久久综合久久鬼色| 欧美男女爱爱视频| 色婷婷精品视频| 国产91在线播放| 第一页在线观看| 欧美精品久久天天躁| 日本精品人妻无码77777| 国产九色精品成人porny| 91视频 - 88av| 久久婷婷国产| 国产精品成av人在线视午夜片| 777电影在线观看| 欧美一区二区精品在线| 国产一级二级三级| 91在线观看地址| 国产九九在线视频| 亚洲精品国产成人影院| 国内精品视频在线播放| 亚洲天堂一区二区| 色综合久久精品亚洲国产| 欧美一级视频免费| 在线视频国内一区二区| 成人免费视频网站入口::| 成人h动漫精品一区二| 日韩精品一区中文字幕| 亚洲91视频| 久久99欧美| 激情久久一区二区| 欧美激情亚洲自拍| 国产精品无码2021在线观看| 欧美一区二区在线免费观看| 九九热在线免费观看| 中文字幕视频一区二区三区久| 丰满熟女人妻一区二区三区| 久久精品主播| av在线免费观看国产| 国产成人精品999在线观看| 91黄色国产视频| 精品成人免费一区二区在线播放| 欧美高清视频在线| 国产粉嫩一区二区三区在线观看 | 国产精品扒开腿爽爽爽视频| 国产美女情趣调教h一区二区| 亚洲人成免费电影| www国产在线| 欧美亚州韩日在线看免费版国语版| 麻豆changesxxx国产| 中文字幕免费不卡| 亚洲高清无码久久| 国产在线精品一区二区不卡了| 国产在线青青草| 国产精品vip| 亚洲午夜在线观看| 亚欧日韩另类中文欧美| 99热99热| 精品国产亚洲一区二区在线观看 | 中文字幕亚洲在| 扒开jk护士狂揉免费| 成人动漫一区二区在线| theporn国产精品| 日韩精品一区第一页| www.99热这里只有精品| 欧美韩国一区| 欧美aaa在线观看| 色一区二区三区四区| 六十路精品视频| 国产成人精品福利| 亚洲自拍偷拍视频| 久久久久久一区二区三区四区别墅| 日韩av大片免费看| 黄色激情在线播放| 国内成人精品视频| 四虎亚洲精品| 美女性感视频久久久| 日本中文字幕伦在线观看| 一区二区三区视频免费| 国产毛片在线看| 亚洲色图第一页| 黄色在线视频观看网站| 日韩精品小视频| 视频在线观看你懂的| 亚洲国产精品久久久久秋霞蜜臀 | 成人免费视频国产在线观看| 性色av浪潮av| 国产精品一区二区三区四区 | 久久蜜桃av一区精品变态类天堂| 国产精品一区二区人妻喷水| av亚洲精华国产精华| 污污内射在线观看一区二区少妇| 国产91精品免费| 久久精品中文字幕免费mv| 77777亚洲午夜久久多人| 中文字幕乱码一区二区 | 欧美日韩国产一二三| 欧美激情免费在线| 激情 小说 亚洲 图片: 伦| 青青草原综合久久大伊人精品| 欧美国产一二三区| 欧美猛男同性videos| 日韩午夜在线影院| 精品日本一区二区| 韩国主播福利视频一区二区三区| 国产91精品久久久久| 自拍视频在线看| 热久久99这里有精品| 欧美亚洲大片| 成人美女免费网站视频| 日本在线一区二区三区| 精品国产91亚洲一区二区三区www| 欧美xxxx在线| 在线视频欧美日韩| 国产精品久久久久高潮| 精品午夜福利视频| 亚洲自拍偷拍网站| 久久精品久久精品久久| 欧美丝袜一区二区| 免费国产黄色网址| 精品精品99| 亚洲综合视频一区| 欧美日韩四区| 成熟老妇女视频| 黄网站免费久久| 国产伦精品一区二区免费| 久久久久久久久久久久久女国产乱| 91资源在线播放| 亚洲免费在线播放| 久久国产黄色片| 5月丁香婷婷综合| 日韩中文字幕观看| 中文国产亚洲喷潮| 欧美人与禽猛交乱配| 日本欧美国产在线| 国产高清精品二区| 你懂的视频在线一区二区| 色999国产精品| 搞av.com| 精品一区二区三区不卡| 中文字幕在线播放一区| 中文字幕一区二区三区在线观看 | 亚洲精品综合在线| 国内精品福利视频| 91精品国产91久久久久久最新毛片| 婷婷丁香花五月天| 日韩在线播放av| 在线精品亚洲欧美日韩国产| 亚洲va欧美va在线观看| 国产精品一区二区99| 国产日本在线播放| 韩国欧美国产1区| 一道本在线观看| 精品久久久久久久久久| 国产福利免费视频| 在线不卡国产精品| 神马久久午夜| 不卡一区二区三区视频| 天天精品视频| 在线观看av网页| 久久九九全国免费| 三级黄色在线视频| 精品99一区二区| 成人免费看片| 成人国产精品免费视频| 国内精品久久久久久久久电影网| 九色自拍视频在线观看| 国产美女娇喘av呻吟久久| 成人做爰69片免网站| 色综合天天综合狠狠| 五月婷婷狠狠干| 久久久久久com| 亚洲91网站| 欧洲xxxxx| 国产一区在线观看麻豆| 国产亚洲精品精品精品| 色猫猫国产区一区二在线视频| 无套内谢的新婚少妇国语播放| 欧美国产极速在线| 99这里只有精品视频| 女女百合国产免费网站| 精品一区在线看| 5566中文字幕| 欧美另类变人与禽xxxxx| 免费观看久久久久| 国产日韩综合一区二区性色av| 日韩极品一区| 亚洲精品久久久中文字幕| 中文成人av在线| 在线观看免费视频a| 最新亚洲国产精品| 日韩久久99| 熟女视频一区二区三区| 韩日欧美一区二区三区| jizz亚洲少妇| 日韩亚洲欧美中文三级| 暖暖在线中文免费日本| 国产伦精品一区二区三区视频黑人| 亚洲精品123区| 久久一区二区电影| 91久久国产最好的精华液| 波多野结衣一区二区| 91精品美女在线| 欧美激情综合色综合啪啪| 亚洲美女精品视频| 亚洲成a天堂v人片| 欧美18xxxxx| 国产精品视频久| 欧美一区不卡| www国产视频| 日本高清免费不卡视频| 巨大荫蒂视频欧美大片| 91亚洲精华国产精华| 极品尤物久久久av免费看| 国产精品无码网站| 欧美三级资源在线| 亚洲小说区图片| 蜜桃91精品入口| 久久国产剧场电影| 一级aaa毛片| 国产午夜一区二区| 国产一区二区三区精品在线观看| 99久久免费观看| 国产婷婷色一区二区三区四区| 国产农村老头老太视频| 7777免费精品视频| 成人羞羞网站| 亚洲精品久久一区二区三区777| 日本韩国欧美三级| 在线观看wwwxxxx| 欧美日韩亚洲一区二区三区四区| 久久99久久久久| 特级毛片www| 久久久成人av| 色婷婷综合久久久久久| 九九九九九九九九| 色综合久久久久久久久久久| 2024最新电影免费在线观看| 你懂的网址一区二区三区| 国产一区二区导航在线播放| 无码视频在线观看| 欧美黄色免费网站|