總部Google
電話: +1 650-253-0000
傳真: +1 650-253-0001
產品:https://goo.gl/qfuWX5


文章標籤

顏澤偉 發表在 痞客邦 留言(5) 人氣()

今天在跑例行更新的爬蟲時

發現了這個問題

我用的是 chromedriver + selenium

 

Traceback (most recent call last):

文章標籤

顏澤偉 發表在 痞客邦 留言(0) 人氣()

JSON因為其使用方便性與跨平台適用性,應該是目前為止最常見的傳輸格式了

在 Android 中,我們會用 Gson 來做格式解析

Gson 可以自動幫我們轉成 Object 是個很方便的類

但有種情況是 JSON 的 field name 不是我們想要的

我們的物件屬性名需與 JSON 一致才能轉換,導致閱讀上的問題

文章標籤

顏澤偉 發表在 痞客邦 留言(0) 人氣()

不知道大家用 git push remote branch 指令時有沒有遇過這個問題

error: src refspec feature/ZeWeiNote does not match any.
error: failed to push some refs to remote.

這兩個是一起出現的

文章標籤

顏澤偉 發表在 痞客邦 留言(1) 人氣()

今天做了一件傻事

沒錯,和標題一樣,我用git rebase 刪除還未 push 的 commit…

原本在 rebase 未完成時,可以用 git rebase -abort 來取消

但偏偏我又完成了 rebase 導致正常方法無法救回來

經過一番研究後找到了解法

顏澤偉 發表在 痞客邦 留言(0) 人氣()

今天我們就來說說 AsyncTask 該怎麼用

還有他後面的 < void, void, void > 三個參數的作用吧!! 

我們就從解說官方的範例開始吧,code 如下:

private class DownloadFilesTask extends AsyncTask {
     protected Long doInBackground(URL... urls) {
         int count = urls.length;
         long totalSize = 0;
         for (int i = 0; i < count; i++) {
             totalSize += Downloader.downloadFile(urls[i]);
             publishProgress((int) ((i / (float) count) * 100));
             // Escape early if cancel() is called
             if (isCancelled()) break;
         }
         return totalSize;
     }

     protected void onProgressUpdate(Integer... progress) {
         setProgressPercent(progress[0]);
     }

     protected void onPostExecute(Long result) {
         showDialog("Downloaded " + result + " bytes");
     }
 }

 

先說後面的三個參數分別代表

顏澤偉 發表在 痞客邦 留言(0) 人氣()

今天看到了一段code是和ssl憑證有關的

用到了MessageDigest來進行解譯

想說加個註解,了解一下code的行為在做什麼

private static byte[] getFingerprint(String httpsURL) 
throws IOException, NoSuchAlgorithmException
, CertificateException, CertificateEncodingException {

    final HttpsURLConnection con = 
      (HttpsURLConnection) new URL(httpsURL).openConnection();
    con.setConnectTimeout(5000);
    con.connect();

    final Certificate cert = con.getServerCertificates()[0];
    final MessageDigest md = MessageDigest.getInstance("SHA1");
    md.update(cert.getEncoded());
    return md.digest();

}

由於公司案子的設計偷懶,沒有把憑證放於app之中

故我是從說好的url取得 certificate

文章標籤

顏澤偉 發表在 痞客邦 留言(0) 人氣()

今天看到專案中運用到 Retrofit

便好奇的 google 一下各大相同類型框架的優缺點

了解為何公司會採取 Retrofit 的原因

看了一段不錯的比較表格

記錄下來分享給大家

文章標籤

顏澤偉 發表在 痞客邦 留言(0) 人氣()

今天遇到一個小問題
可能是新版的沒有內建技援

 

所以Android Studio 升級到2.3.1
gradle 插件版本升級到2.3之後

文章標籤

顏澤偉 發表在 痞客邦 留言(4) 人氣()

今天要來講的主題是 Web 與 Android 的溝通
Android 可以與 JavaScript 互相溝通
調用彼此的 function 來做一些 native 的事情
比如說跳 Toast 訊息、傳推播…等。

 

文章標籤

顏澤偉 發表在 痞客邦 留言(0) 人氣()