原创 Android手機WiFi下強制使用4G數據流量上網

行之有效的方案 其他方案 private void doTest() { display("Requesting CELLULAR network connectivity..."); Connectivit

原创 Mac 遠程開啓屏幕共享

使用背景 我們有幾臺Mac作爲服務器,開啓了ssh,之前上線之類的操作都是通過命令來進行的。之前也沒覺得什麼,但是上次上線忽然增加了服務器的數量,命令一下子顯得“不人性化”起來。所以決定改成“帶界面”的操作。 遠程開啓屏幕共享 s

原创 批量創建軟連接的腳本

在當前目錄下,批量創建軟連接的腳本 #!/usr/bin/env python # coding=utf-8 import os import sys selfName = sys.argv[0] if len(sys.arg

原创 Android高級彩蛋

基本效果 背景 爲了方便測試打開彩蛋,同時對用戶隱藏彩蛋。 正確的手勢 可胖、可瘦、可高、可矮、對於雍餘的畫筆不參與計算。 錯誤手勢 1.不完整、亂畫 2.出現重疊 3.過渡傾斜 手勢識別的算法實現: 爲了最優的性

原创 XCode 動態庫未簽名問題的解決

遇到的問題: 最近在嘗試使用動態庫,編譯沒有問題,但運行時報錯,這對於第一次使用動態庫來說,簡直是個巨大的打擊。開始一直以爲動態庫沒能加載是路徑選擇錯誤,浪費的大把時間。仔細看日誌後,發現動態庫居然要簽名,不簽名就不讓用,好像是從

原创 mac 安裝php5.6 降級php

可能失敗的安裝方式 一般的安裝方式是使用如下命令 curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6 但在國內不好使,唯一還好使用的工具是homebrew 正確的安裝方式

原创 阿里巴巴2019實習生招聘

阿里巴巴2019實習生招聘 If not now, when? If not me, who? 此時此刻,非我莫屬! 點擊這裏 點擊這裏查看職位 請用微信掃碼

原创 Android下的Java之interface接口泛型 動態獲取泛型的類型

# Android的泛型有多坑? ## 先來看看該問題的場景 將String轉換成具體對象時,需要進行的關鍵點就是獲取到對象的類型 ``` java // 這裏定義了一個泛型R,那運行時如何獲取到這個類型呢? // 第一眼看上去,你會感覺

原创 Android雙卡設備 如何正確獲取上網卡運營商類型

關於Android獲取運營商的文章已經很多,大部分都是沒有深入測試,在雙卡設備上存在讀取錯誤信息的問題,這裏給出總結。 首先是讀取SIM卡權限的問題 註冊 <uses-permission android:name="andr

原创 Android自定義View之繼承自View後的wrap_content屬性不生效的解決

關於自定義View,建議大家最好繼承自Android已經實現過的View,比如ImageView和TextView,這樣比較簡單,而且各種屬性都能生效,比如match_parent和wrap_content等屬性。 但是當你開發的自定

原创 Android 修改 final 類型的 field

這是一個比較特殊的知識點,需要從HotSpot與Dalvik的區別說起。 問題起因 相信大家在繼承RecycleView時,對ViewHolder中的itemView都有重寫的慾望。這個itemView是final類型的,不容許被修改

原创 作爲一個有系統權限的Launcher應該乾的事情

一個有個性的Launcher應該乾的事情有以下 第一步是把自己註冊成默認程序 private fun makeSelfDefaultLauncher() { val filter = IntentFilter() fil

原创 Android 打開設置界面或者WiFi連接界面

直接進入手機中的wifi網絡設置界面 startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS)); 直接進入手機中設置界面 startActivity(new Intent(Setti

原创 5分鐘快速實現Android爆炸破碎酷炫動效

5分鐘快速實現Android爆炸破碎酷炫動效 這個破碎動畫,是一種類似小米系統刪除應用時的爆炸破碎效果的動畫。 效果圖展示 先來看下是怎樣的動效,要是感覺不是理想的學習目標,就跳過,避免浪費大家的時間。�� 源碼在這裏��https:/

原创 Android內的HashMap與Java8中的HashMap

默認起始容量不同 不同的起始容量意味着元素在遍歷時輸出的順序很可能不同: Java8 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 Android stati