AndroidApp使用Web達成第三方認證

在日常中,可以見到有許多APP的會員機制使用Facebook、Google作為第三方驗證,直接透過這些服務提供的GUI進行登入,程式只要專心在驗證後取得的資料處理就好。

從上面可以大概知道,如果APP要使用第三方驗證,那就需要驗證服務提供者要有自己的APP,這樣才能開啟對應的登入或授權視窗。

如果你所在的單位並沒有這類驗證服務的手機客戶端+SDK,實作上比較麻煩點。

不過Android中的Intent以及URL Schema為我們提供了一個解決方式,我們可以針對APP設定與之對應的URL Schema(例如:http使用瀏覽器開啟);總體而言是在OAuth過程中的Redirect_Uri,重導向到需要認證的APP定義的URL格式(例如:nkfust://login?token=XXXX),藉此啟動APP並且由APP讀取此段URL的內容進行後續的處理。

...繼續閱讀 »

TypeScript型別轉換

TypeScript的強型別特性,偶爾在程式中需使用到型別轉換,值得注意的是,由於TypeScript最終必須轉換為JavaScript,而JavaScript本身為弱型別語言,所以這裡指的型別轉換為TypeScript環境下撰寫程式時的處理。TypeScript中的型別轉換本身對於JavaScript結果是沒有影響的,既使轉換是錯誤的。

...繼續閱讀 »

TypeScript函數宣告

前篇中提及TypeScript在變數型別宣告中,可以指定變數類型,讓程式設計過程中使用強型別的特性,減少開發過程中的錯誤。

想當然,除了在變數上,在函數、方法也是可以定義參數的型別的。

...繼續閱讀 »

TypeScript基礎類型

TypeScript中包含了boolean、number、string、tuple、enum、any......等。

上述中已經有部分的類型已經存在於JavaScript中,故本篇就不再說明其意義以及與JavaScirpt無差別的部分。

...繼續閱讀 »

限制程式局部區塊僅於特定.NET環境可用

隨.NET各種環境的增加,在撰寫程式時部分功能在特定的環境中可或不可運作,這時候就可以利用前置處理器指示詞加以實現。

前置處理器指示詞用以達成條件式編譯的功能,在針對各平台編譯時可以透過所設的條件產生對應版本。

本篇則以一個.NET Core上建立Timer類別作為指示詞使用範例。

本範例使用.NET Core Console專案建立,並建立MyTimer類別(點我查看專案)。

...繼續閱讀 »