小鴨幹線 – 說明

小鴨幹線開發試驗版(版本0.1)

此版本只有基本功能;各類黑白、名稱名單尚未啟用,目前希望主要測試下攔截功能。
此版本為試驗用,隨後升級時可能須重新安裝方可正常運作,敬請留意。

試驗版已有的功能,用法及所須權限與小熊舊版大致相若,以下列出要點:
(若你使用Android 5-6,請留意最後的數點,否則程序不會正常運作)

使用說明

(1) App的啟用/停用總掣

總掣在小鴨的右方。

(2) 程序設定功能

設定功能位於上方toolbar的設定icon

(a) 攔截動作:
  • “設定攔截方式”,設定非漫游及漫游所用的攔截方式,包括沒有動作接通再掛線,接通再掛線是以模擬bluetooth方法,一般不用root,除非如HTC等一些ROM為bluetooth事件設了額外權限。Android 5.0以上要先設定通知權限,見下文。
  • “使用root方式”,當然要root了機方可用,開啟此項方可使用”設定攔截方式”中的root方式。在root dialog中請選擇永久而非限時/再次詢問的權限。
  • “通話時仍攔截來電”,一般情況,在通話中若有廣告來電,程式不會作掛線動作,因為可能會將現有通話亦掛斷,但以root方式模擬按 End call鍵,則或可只攔截廣告來電而不影響原有通話,但請注意部份機種或會無效/或只掛斷原有來電,因此使用前務必測試(最好回報機種及結果)。
  • (0.1.5版起)「+852來電作無效」預設為開,因為香港不應收到來自本地的IDD,因此「+852」開頭的很可能是假冒來電。( 而且在此情況,系統會把來電號碼用來核對聯絡人,若來電與本地聯絡人電話相符,Android來電的UI只會顯示聯絡人名稱,用戶便不知道電話是「+」開頭的假冒電話。) 開啟此項後,App攔截時會視所有「+852」的電話不在聯絡人名單上,並且視乎下述設定,會彈出警告視窗。但若用戶使用的網絡若在香港收香港電話也會顯示+852,請關掉此項
  • 可設定有廣告(或其他要攔截)來電時是否彈出視窗,(0.1.4版起)選擇視窗位置,(0.1.5版起)亦可選擇有「+」號字頭來電時顯示電話是否有效及(有效的話)電話來源地。
  • 上述有關「+」號字頭的功能,僅在香港的流動網絡運作,在境外不會生效。
  • 可設定攔截來電後是否要發出通知(若連續攔截多個來電亦僅會發一次通知),及是否刪除已攔截電話在系統中的紀錄等(預設為關)。
  • “自動回報廣告電話”,預設是關的。開啟此項可協助hkjunkcall監察廣告來電情況,此項只會回報原已在hkjunkcall名單中的電話,不會將其他電話(如設定攔截其他電話)回報。
(b) 篩選條件:
  • 各種篩選條件供選擇
  • 部份選項會隨其他選項而disable,表示這些選項在此情況下是沒有作用的,例如若攔截不在通訊錄的來電者,則表示匿名來電也會被攔截(因為匿 名不會在通訊錄),因此匿名來電的選項會disable。又如攔截匿名來電,則不用再選”攔截來電後的匿名來電”,因為後者反正都會被攔截。
  • “攔截來電後的匿名來電”,及不攔截重覆來電的選項,可以選擇停用,或1-5分鐘的等待時間。在等待時間期間,程式會在通知欄顯示通知(按Android設計,確保服務不會被中止)。
  • 電話符合例外條件不用攔截時,仍會彈出視窗及記錄,顯示不攔截的原因。

HKJunkcall更新設定功能

HKJunkcall更新設定,位於總覽Tab中 HKJunkcall卡片下方。

  • 背景數據是指自動更新及自動/排程提交Junkcall回報,不包括使用者直接使用立即更新及用app按鍵提交的數據。Default設定了只用Wifi下載自動更新,但可用非roaming的mobile提交回報。
  • 自動更新設定可高達1日4次,沒有新資料時不會重覆下載。
  • 若設定高於1日1次,更新時間只是指定其中一次的大約時間。
  • 為免同時下載,即使指定時間亦會以random方式,大約在該時間下載。
  • 若下載失敗(如連接server問題),會隔一段時間再試,再失敗會隔更長的時間再試(exponential backoff)。
  • 若下載時間的網絡條件不符(如設定了只用Wifi而沒有Wifi),則會監察網絡狀態,待連接Wifi時再試。

Junkcall名單

可按第2個tab查閱。

  • 在沒有輸入電話搜尋時是按Descending的HKJunkcall 序號排列,一般是新record在前,輸入電話搜尋後則是按電話順序。
  • 行業及嚴重程度以Icon表示,點擊record卡片可查看詳情,亦可查看HKJunkcal網頁。

來電攔截/通知紀錄

可按第3個tab查閱。

  • 點擊record卡片可查看詳情。除電話及時間外,攔截/不攔截原因及動作也記錄。
  • 紀錄中的”網絡”欄是網絡商的 Mobile Country Code + Mobile Network Code。例如45400(csl.)
  • 點擊卡片後,若非匿名電話,下方的動作中可回撥或回報已攔截電話。
  • 若是雙卡機,程序會嘗試辨別及記錄SIM(插槽)。Android5.0以上會嘗試記錄SIM卡識別碼(Android系統給予的 Subscription ID,而非SIM卡本身的Unique ID,基本上表示該手機所曾插入的第?張SIM卡)。若使用雙卡機,希望留意及回報是否正確運作。

回報

  • 右下方黃色圓形按鍵,是用以回報系統電話紀錄中廣告電話。
  • 若選擇了刪除已攔截電話在系統中的紀錄,則應於來電攔截/通知紀錄中找出該來電的卡片,點擊後選擇回報。

雙卡機

  • 程式會嘗試辨認雙卡機,及使用雙卡機的非標準API來攔截(Android 5.1前標準Android並無雙卡API)。由於機種眾多,很多雙卡機種都未有機會試驗,因此相信在雙卡機上,較大機會出現中止或不能正常運作,希望大家回報有問題的機種

漫游

  • 程式預設了漫游時是使用靜音方式攔截,以免掛線時被收費。
  • 程式是按網絡的 Mobile Country Code 來決定所處地區,在香港以外收到來電號碼,會先去除852,+852,0852或00852字頭,再和Junkcall資料作比較。
  • 另一方面,是否啟用漫游攔截動作則是按手機回報該SIM card是否在漫游狀態。因此即使用外地SIM Card在非漫游狀態,理論上也不會將當地電話當為香港電話。

「+」號來電

Task killer 及非標準ROM

  • 和類似程式一樣,若你使用Task killer等,請設定本程序為例外。若你使用非標準ROM(尤其是內地各廠的ROM),則要手動給予電話攔截/Wiretap及自動啟動的權限,部份亦須給予在其他程序上繪圖/Pop-up的權限。

Android 5.0/6.0或以上設定

  • Android 5.0或以上,更改了靜音及模擬bluetooth有關的運作,以致原有來電靜音及停止震動方法不能正常運作,亦不能以原有方法模擬bluetooth接 聽。解決辦法是要取得看來不相關的 Notification access 權限,方可正常使用(非root)接通再掛線的方式,及在攔截時真正靜音。此權限須按下述設定,程序不會藉此實際存取手機的任何通知。
  • Android 5.0 或以上:請於本App設定>攔截動作>設定通知存取權,將存取權給予小鴨幹線。

Android 6.0或以上設定

  • 本程序目前設定了運行目標為 Android 6.0,根據6.0的標準,部份私隱危險度較高的權限,須由用戶自行逐項開啟,而不是在下載時一併授予。當中,本程序設定了會使用電話,聯絡人及SD Card的權限(不過此版本暫未用SD Card)。0.1.2版起,在有需要使用這些權限時,會自動提示及詢問用戶。
  • 請於本App設定>攔截動作>允許其他程式上繪製開啟小鴨幹線的權限,方可確保來電時彈出的視窗正確運作,否則該視窗可能會看不到。
  • 另外,Android 6.0的新Doze 及App Standby Mode在實機上對程序攔截及定期更新的影響未經測試(基本上,根據文件,在非充電時,用戶不與App interact一段時間,該App便會被凍結,不能存取網絡,每天可能只被叫醒一次)。希望若在Android 6使用留意一下,是否須關掉此App的Battery Optimization。

權限說明

以下列出各權限用途

  • 擷取執行中的應用程式 – (Android 4.4 或以下)待來電介面出現才進行接通動作
  • 通訊錄 – 使用通訊錄相關的篩選條件, Android 6以上不使用的話不用開啟
  • 手機 / 讀取手機狀態和識別碼 / 系統設定 / 更改音效設定 – 攔截功能所需 (不會使用識別碼)
  • 直接撥打電話號碼 – 用於回撥來電
  • 讀取/寫入通話記錄 – 用於回報來電及刪除通話記錄
  • 相片/媒體/檔案/儲存空間 – 以後版本會用作匯入匯出自訂電話,Android 6以上不使用的話不用開啟
  • 繫結至通知偵聽器服務 – (Android 5.0 或以上)上文指的Notification access
  • 網絡存取權 – HKJunkcall下載及回報
  • 查看網絡連線 – 確保背景數據在網絡連線類型符合條件方使用
  • 防止裝置進入休眠狀態 / 啟動時執行 – 確保程序持續生效
  • 停用屏幕上鎖 / 覆蓋其他應用程式 – 不同情況下能彈出來電通知

註:ACCESS_SUPERUSER – SuperSU作者Chairfire已depreciate此權限,因些程序沒有列出此權限