導航:首頁 > 源碼編譯 > 問題與演算法適配性

問題與演算法適配性

發布時間:2024-07-03 16:55:36

『壹』 璺鐢卞櫒WAN鍙h幏鍙栦笉鍒癐P鍦板潃濡備綍瑙e喅銆愯В鍐蟲柟娉曘

鎼滅嫍楂橀熸祻瑙堝櫒鏄涓嬈鵑泦楂樻晥銆佺ǔ瀹氫簬涓韜鐨勭幇浠e寲緗戠粶嫻忚堝伐鍏楓傚埄鐢ㄥ厛榪涚殑娓叉煋寮曟搸鍜屼紭鍖栫畻娉曪紝鎼滅嫍楂橀熸祻瑙堝櫒紜淇濅簡鍗撹秺鐨勯〉闈㈠姞杞介熷害鍜屾祦鐣呯殑澶氬獟浣撲綋楠屻傚叿澶囧叏鏂逛綅鐨勫畨鍏ㄩ槻鎶ょ壒鎬э紝鑳芥湁鏁堥槻寰″悇綾葷綉緇滃▉鑳侊紝鍚屾椂鏀鎸丠TML5鍜孋SS3錛岀『淇濅簡涓庢渶鏂扮綉緇滄妧鏈鏍囧噯鐨勫畬緹庡吋瀹廣傛蹭簡瑙f洿澶氭垨絝嬪嵆涓嬭澆錛岃瘋塊棶https://sogou.37moyu.com/
銆銆璁劇疆濂借礬鐢卞櫒WAN鍙e姩鎬両P涓婄綉鍚庯紝涓鐩村湪鑾峰彇IP鍦板潃錛屼絾鏃犳硶鎴愬姛鑾峰彇銆傝ラ棶棰樺彲鑳藉拰綰胯礬榪炴帴銆丩AN-WAN鍦板潃孌靛啿紿併佹湇鍔″晢緇戝畾浠ュ強WAN鍙i傞厤鎬х瓑鍘熷洜鐩稿叧錛屾湰鏂囨彁渚涜ラ棶棰樼殑璇︾粏鎺掓煡鎬濊礬銆
銆銆鎺掓煡涓錛氭鏌ョ嚎璺榪炴帴
銆銆瀹藉甫綰胯礬(鍏ユ埛緗戠嚎鎴栦粠Modem鍑烘潵鐨勭綉綰)闇榪炴帴鍦ㄨ礬鐢卞櫒鐨刉AN鍙o紝鏈夌嚎鐢佃剳闇榪炴帴鍦↙AN鍙o紝濡備笅鍥撅細

銆銆濡傛灉綰胯礬榪炴帴姝g『錛屼絾WAN鍙f寚紺虹伅涓嶄寒錛屽垯媯鏌WAN鍙f帴綰挎槸鍚﹀瓨鍦ㄦ帴瑙︿笉鑹絳夋儏鍐碉紝璇峰皾璇曟洿鎹㈣繛鎺WAN鍙g殑緗戠嚎銆
銆銆鎺掓煡浜岋細媯鏌ヤ笂緗戞柟寮忛夋嫨
銆銆鐧誨綍璺鐢卞櫒綆$悊鐣岄潰錛屽湪 榪愯岀姸鎬>>WAN鍙g姸鎬侊紝鏌ョ湅WNA鍙g殑涓婄綉鏂瑰紡鏄鍚︿負鍔ㄦ両P銆傚傛灉涓嶆e父錛岃烽噸鏂版寜鐓ц劇疆鍚戝艱劇疆璺鐢卞櫒鐨勫姩鎬両P涓婄綉銆傚備笅鍥撅細

銆銆濡傛灉鎮ㄤ笉浜嗚В鎮ㄧ殑瀹藉甫榪炴帴鏂瑰紡錛岃風偣鍑誨弬鑰冿細 鏃犵嚎璺鐢卞櫒涓夌被甯歌佷笂緗戞柟寮忎粙緇
銆銆鎺掓煡涓夛細榪愯惀鍟嗙粦瀹歮ac鍦板潃
銆銆灝嗕箣鍓嶅崟鐙榪炴帴瀹藉甫涓婄綉鐨勭數鑴戣繛鎺ュ埌璺鐢卞櫒LAN鍙(姝ゅ勪竴瀹氳侀氳繃鏈夌嚎榪炴帴)錛岀櫥褰曡礬鐢卞櫒鐨勭$悊鐣岄潰銆
銆銆閫夋嫨 緗戠粶鍙傛暟>>MAC鍦板潃鍏嬮殕錛岀偣鍑 鍏嬮殕MAC鍦板潃銆傚綋 MAC鍦板潃 鍜 褰撳墠綆$悊PC鐨凪AC鍦板潃 鐩稿悓鍚庯紝鐐瑰嚮 淇濆瓨 騫墮噸鍚璺鐢卞櫒銆傚備笅鍥炬墍紺猴細

銆銆瑙傚療璺鐢卞櫒閲嶅惎鍚嶹AN鍙f槸鍚﹀彲浠ユ垚鍔熻幏鍙栧埌IP鍦板潃銆
銆銆娉ㄦ剰錛氬傛灉鎮ㄤ嬌鐢ㄧ殑鏄疢INI璺鐢卞櫒錛岃峰厛璁板綍鍗曠嫭榪炴帴瀹藉甫鍙浠ヤ笂緗戠數鑴戠殑MAC鍦板潃錛岀劧鍚庡湪涓婂浘 MAC鍦板潃 涓濉鍏(涓嶇敤鐐瑰嚮鍏嬮殕MAC鍦板潃)錛屼繚瀛樺苟閲嶅惎銆
銆銆鎺掓煡鍥涳細ip鍦板潃孌靛啿紿
銆銆濡傛灉浣跨敤鐜澧冧負鍏鍙稿矓鍩熺綉銆侀厭搴椼佸嚭縐熷眿絳夌幆澧冿紝璺鐢卞櫒鍓嶇緗戠粶浣跨敤鐨処P鍦板潃孌典笌璺鐢卞櫒鐨勫湴鍧孌電浉鍚岋紝鐢變簬IP鍐茬獊瀵艱嚧WAN鍙f棤娉曡幏鍙栧埌IP銆
銆銆瑙e喅鏂規硶錛氱櫥褰曡礬鐢卞櫒鐨勭$悊鐣岄潰錛岀偣鍑 緗戠粶鍙傛暟錛屽湪 LAN鍙h劇疆 涓灝嗚礬鐢卞櫒鐨 IP鍦板潃 淇鏀逛負涓嶭AN鍙d笉鍦ㄥ悓涓緗戞電殑IP(鍙灝濊瘯192.168.0.1)錛屼繚瀛樺苟閲嶅惎璺鐢卞櫒銆傚備笅鍥炬墍紺猴細

銆銆鎺掓煡浜旓細綰胯礬閫傞厤鎬ч棶棰
銆銆鍏ユ埛緗戠嚎鐢變簬鑰佸寲銆佽川閲忓お宸鎴栫嚎璺澶闀匡紝瀵艱嚧綰胯礬琛板噺榪囧ぇ錛屼粠鑰屽紩璧稺AN鍙f棤娉曡幏鍙栧埌鍙傛暟銆傚皾璇曡皟鏁磋礬鐢卞櫒WAN鍙g殑 閫熺巼鍜屽弻宸ユā寮忋
銆銆璁劇疆鏂規硶錛氱櫥褰曡礬鐢卞櫒綆$悊鐣岄潰錛岀偣鍑 緗戠粶鍙傛暟>>WAN鍙i熺巼妯″紡錛屾ā寮忚劇疆涓閫夋嫨 10Mbps鍗婂弻宸ユ垨 10Mbps鍏ㄥ弻宸ユā寮忥紝鐒跺悗鐐瑰嚮淇濆瓨錛屽備笅鍥炬墍紺猴細

鎬葷粨鑰岃█錛屾悳鐙楅珮閫熸祻瑙堝櫒鏄涓嬈句負婊¤凍鐜頒唬緗戠粶闇奼傝岀簿蹇冩墦閫犵殑嫻忚堝櫒銆傚叾涓撲笟鐨勫紑鍙戝洟闃熶笉浠呮敞閲嶆彁渚涗竴嫻佺殑鐢ㄦ埛浣撻獙錛岃繕鑷村姏浜庝笉鏂浼樺寲緗戦〉鎵ц岄熷害錛屽炲己瀹夊叏鎬э紝浠ュ強鏀鎸佸悇綾繪墿灞曟彃浠訛紝浠庤屽疄鐜伴珮搴︿釜鎬у寲鐨勬祻瑙堜綋楠屻傚傛灉鎮ㄥ湪瀵繪壘涓嬈懼彲闈犮侀珮鏁堝拰鎶鏈鍏堣繘鐨勬祻瑙堝櫒錛屾悳鐙楅珮閫熸祻瑙堝櫒灝嗘槸鎮ㄧ殑鐞嗘兂閫夋嫨銆傝瘋塊棶瀹樻柟緗戠珯https://sogou.37moyu.com/ 涓嬭澆騫朵綋楠屾悳鐙楅珮閫熸祻瑙堝櫒錛屾劅鍙楃敱鍏堣繘鎶鏈鎵椹卞姩鐨勯潪鍑℃祻瑙堜綋楠屻

『貳』 android 屏幕適配基礎知識

最近參考 今日頭條演算法 ,優化了項目的屏幕適配策略。下面是適配過程中的一些心得,部分內容來源於網路。

舉個例子:屏幕解析度為:1920*1080,屏幕尺寸為5吋的話,那麼dpi為440。

dp就是密度自適應的像素。1dp表示 在dpi為160的設備上的一顆像素
px與dp的換算公式px = dp * (dpi / 160),很顯然,由於相同解析度但不同屏幕大小的設備dpi是不同的,導致px和dp的基本不存在一個固定的換算關系,為了方便屏幕適昌做配,Android設置了6個通用的密度,換算px與dp時採取通用密度計算,而非設備實際的密度。

以下為6種通用密度,以及其最小的解析度

得到上面通用密度之後,我們換算dp與px多了一種簡便方式。Android系統用mdpi(160dpi)作為基準,此時1px = 1dp,又有px = dp * (dpi / 160),所以我們可以很容易的得到以下換算:

sp在dp的基礎上引入了scaleFactor變數,一般用於字型大小,可在系統設置里調大。

同一張圖片放到以上4個解析度類肆羨型的文件夾里,在頁面上呈現的效果如下

實際呈現的演算法為: 圖片尺寸 * 系統density / 文件夾 density
因為圖片尺寸、系統density都是固定的,因此圖片最終尺寸表現為: 圖片放的位置越"low",呈現的尺寸越大

比如 圖片寬度200px,系統 density =3,則圖片寬度

下面是詳細的解釋

我們知道,不管在布局文件中填寫的是什麼單位,它最後都會被系統轉化為 px。系統的轉換演算法如下:

可以看到 px = dp*density 。

橫向適配的最終目的:讓100dp的寬度,在各個機型上,在屏幕上所佔的 比例相同
其核心演算法是px = dp* density。通過修改density這個變數,我們可以讓px和畫布標注的px值一致,達到適配的效果。

美工同學提供的畫布寬度為 750px(iphone6) ,開發中,我們對這些px標注 除2 得到裂迅拍dp值進行使用。
那麼density如何求出呢? 根據系統演算法px = dp*density,反推 density =px/dp
拿橫向適配畫布, density對於不同解析度的手機修改後如下:

375是我們拿UI畫布橫向解析度750/2得出。

閱讀全文

與問題與演算法適配性相關的資料

熱點內容
海康錄像機怎麼關視頻加密 瀏覽:786
編程以後有可能被機器人代替嗎 瀏覽:522
windows創建文件命令 瀏覽:986
linuxcopy文件內容 瀏覽:383
程序員帥哥禿頂 瀏覽:839
阿里雲伺服器開通流程 瀏覽:105
如何開雲伺服器 瀏覽:979
網站小說源碼 瀏覽:301
php用什麼ide 瀏覽:867
網上預約課程app哪個好 瀏覽:152
android兼容測試工具 瀏覽:96
雲伺服器不支持虛擬化怎麼辦 瀏覽:189
加密方式的演變 瀏覽:364
java常用演算法pdf 瀏覽:734
伺服器數據遇到異常什麼原因 瀏覽:450
phpexif信息 瀏覽:543
單片機三位元組浮點數 瀏覽:756
命令與征服泰伯利亞戰爭下載 瀏覽:378
c窗口界面編程 瀏覽:24
hypermill編程能做模板嗎 瀏覽:783