分類
發燒車訊

樹莓派使用 OLED 屏显示圖片及文字

樹莓派默認是不帶显示屏的,如果想要查看系統的一些信息,需要使用電腦登錄到樹莓派,或者通過 HDMI 連接外接显示器查看。這樣做總是有點麻煩,我們可以通過外接一個 OLED 屏來显示一些關鍵參數或者圖片。本文將詳細介紹操作方法。

OLED 模組介紹

OLED 屏主要有兩種:128×32 和 128×64 ,主要顏色是白、黃、藍。OLED 屏的特點是功耗低,價格便宜,使用 I2C 接口與主機連接。本文所使用的是 128×64 尺寸的屏幕,外形如下:

它的接口很簡單,只有 4 個 Pin 腳:VCC,GND,SDA,SCL,所以它與樹莓派的連接也很簡單,如下圖所示(本文使用樹莓派 3B):

開啟 I2C 接口

樹莓派默認是不開啟 I2C 接口的,所以我們需要手動打開它。執行以下命令:

$ sudo apt-get install -y python-smbus
$ sudo apt-get install -y i2c-tools
$ sudo raspi-config

然後按以下動圖方式開啟 I2C 功能。

安裝 OLED 屏的 Python 庫

為了在 OLED 屏上显示文字或圖像,我們需要使用到 Adafruit 的 Python 庫,這個庫支持所有的 SSD1306 相關的显示屏,包括 128×32 和 128×64 屏幕。

首先我們需要下載這個庫:

$ git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git

然後進入到目錄,再進行安裝:

$ cd Adafruit_Python_SSD1306
$ sudo python3 setup.py install	# 如果使用 Python2 ,則使用對應命令

找到 OLED 模組地址

安裝好 Python 庫之後,我們可以使用 i2cdetect 命令來找到 OLED 屏的物理地址:

$ i2cdetect -y 1

我們會得到類似這樣的輸出:

不同的模組可能得到不同的輸出。這裏我們的 I2C 地址就是 0x3C。如果你使用的是初代樹莓派(256MB的樹莓派1代B),那麼需要使用下面的命令:

$ i2cdetect -y 0

使用 OLED 屏显示圖像及文字

在剛剛下載的那個庫文件里,有一個 examples 目錄,在那個目錄里,我們可以看到以下內容:

  • animate.py
  • buttons.py
  • image.py
  • shapes.py
  • stats.py

這幾個文件我們可以直接運行,比如:

$ python3 shapes.py

這幾個文件運行的結果如下圖示:

屏幕尺寸適配

以上的幾個示例文件里,它們都默認你的屏幕尺寸是 128×32 ,但它們依然可以跑在 128×64 的屏幕上。如果我們想要看得更舒服一點,我們可以將尺寸進行適配。

在每個 Python 文件里,都有下面這麼一段代碼:

這裏也寫得很清楚了,上下兩行代碼分別代表 128×32 和 128×64 的屏幕,使用何種尺寸的屏幕,只需將對應的代碼前面的 # 去掉即可。

公眾號:良許Linux

有收穫?希望老鐵們來個三連擊,給更多的人看到這篇文章

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

南投搬家公司費用需注意的眉眉角角,別等搬了再說!

※教你寫出一流的銷售文案?

※回頭車貨運收費標準

※別再煩惱如何寫文案,掌握八大原則!

分類
發燒車訊

四、歸併排序 && 快速排序

一、歸併排序 Merge Sort

1.1、實現原理

  • 如果要排序一個數組,我們先把數組從中間分成前後兩部分,然後對前後兩部分分別排序,再將排好序的兩部分合併在一起,這樣整個數組就都有序了。
  • 歸併排序使用的就是分治思想。分治,顧名思義,就是分而治之,將一個大問題分解成小的子問題來解決。小的子問題解決了,大問題也就解決了。
  • 分治思想跟遞歸思想很像。分治算法一般都是用遞歸來實現的。 分治是一種解決問題的處理思想,遞歸是一種編程技巧,這兩者並不衝突。
  • 寫遞歸代碼的技巧就是,分析得出遞推公式,然後找到終止條件,最後將遞推公式翻譯成遞歸代碼。所以,要想寫出歸併排序的代碼,我們先寫出歸併排序的遞推公式。
  • 遞推公式:erge_sort(p…r) = merge(merge_sort(p…q), merge_sort(q+1…r))
  • 終止條件:p >= r 不用再繼續分解
  • merge_sort(p…r)表示,給下標從 p 到 r 之間的數組排序。
  • 我們將這個排序問題轉化為了兩個子問題, merge_sort(p…q) 和 merge_sort(q+1…r),其中下標 q 等於 p 和 r 的中間位置,也就是 (p+r)/2。
  • 當下標從 p 到 q 和從 q+1 到 r 這兩個子數組都排好序之後,我們再將兩個有序的子數組合併在一起,這樣下標從 p 到 r 之間的數據就也排好序了。
  • 實現思路如下:
/**
 * 歸併排序
 * @param arr 排序數據
 * @param n   數組大小
 */
public static void merge_sort(int[] arr, int n) {
    merge_sort_c(arr, 0, n - 1);
}

// 遞歸調用函數
public static void merge_sort_c(int[] arr, int p, int r) {
    // 遞歸終止條件
    if (p >= r) {
        return;
    }
    // 取p到r之間的中間位置q
    int q = (p + r) / 2;

    // 分治遞歸
    merge_sort_c(arr, p, q);
    merge_sort_c(arr, q + 1, r);
    // 將 arr[p...q] 和 arr[q+1...r] 合併為 arr[p...r]
    merge(arr[p...r],arr[p...q],arr[q + 1...r]);
}
  • merge(arr[p…r], arr[p…q], arr[q + 1…r]) 這個函數的作用就是,將已經有序的 arr[p…q] 和 arr[q+1…r] 合併成一個有序的數組,並且放入 arr[p…r]。
  • 如下圖所示,我們申請一個臨時數組 tmp,大小與 arr[p…r] 相同。
  • 我們用兩個游標 i 和 j,分別指向 arr[p…q] 和 arr[q+1…r] 的第一個元素。
  • 比較這兩個元素 arr[i] 和 arr[j],如果 arr[i] <= arr[j],我們就把 arr[i] 放入到臨時數組 tmp,並且 i 后移一位,否則將 arr[j] 放入到數組 tmp,j 后移一位。
  • 繼續上述比較過程,直到其中一個子數組中的所有數據都放入臨時數組中,再把另一個數組中的數據依次加入到臨時數組的末尾,這個時候,臨時數組中存儲的就是兩個子數組合併之後的結果了。
  • 最後再把臨時數組 tmp 中的數據拷貝到原數組 arr[p…r] 中。
/**
 * merge 合併函數
 * @param arr 數組
 * @param p   數組頭
 * @param q   數組中間位置
 * @param r   數組尾
 */
public static void merge(int[] arr, int p, int q, int r) {
    if (r <= p) return;

    // 初始化變量i j k
    int i = p;
    int j = q + 1;
    int k = 0;

    // 申請一個大小跟A[p...r]一樣的臨時數組
    int[] tmp = new int[r - p + 1];

    // 比較排序移動到臨時數組
    while ((i <= q) && (j <= r)) {
        if (arr[i] <= arr[j]) {
            tmp[k++] = arr[i++];
        } else {
            tmp[k++] = arr[j++];
        }
    }

    // 判斷哪個子數組中有剩餘的數據
    int start = i, end = q;
    if (j <= r) {
        start = j;
        end = r;
    }

    // 將剩餘的數據拷貝到臨時數組tmp
    while (start <= end) {
        tmp[k++] = arr[start++];
    }

    // 將tmp中的數組拷貝回 arr[p...r]
    for (int a = 0; a <= r - p; a++) {
        arr[p + a] = tmp[a];
    }
}

1.2、性能分析

  • 歸併排序穩不穩定關鍵要看 merge() 函數,也就是兩個有序子數組合併成一個有序數組的那部分代碼。
  • 在合併的過程中,如果 arr[p…q] 和 arr[q+1…r] 之間有值相同的元素,那我們可以像偽代碼中那樣,先把 arr[p…q] 中的元素放入 tmp 數組。
  • 這樣就保證了值相同的元素,在合併前後的先後順序不變。所以,歸併排序是一個穩定的排序算法
  • 其時間複雜度是非常穩定的,不管是最好情況、最壞情況,還是平均情況,時間複雜度都是 O(nlogn)
  • 歸併排序的合併函數,在合併兩個有序數組為一個有序數組時,需要藉助額外的存儲空間。
  • 儘管每次合併操作都需要申請額外的內存空間,但在合併完成之後,臨時開闢的內存空間就被釋放掉了。在任意時刻,CPU 只會有一個函數在執行,也就只會有一個臨時的內存空間在使用。
  • 臨時內存空間最大也不會超過 n 個數據的大小,所以空間複雜度是 O(n),不是原地排序算法。

二、快速排序 Quicksort

2.1、實現原理

  • 快排的思想是:如果要排序數組中下標從 p 到 r 之間的一組數據,可以選擇 p 到 r 之間的任意一個數據作為 pivot(分區點)。
  • 遍歷 p 到 r 之間的數據,將小於 pivot 的放到左邊,將大於 pivot 的放到右邊,將 pivot 放到中間。
  • 經過這一步驟之後,數組 p 到 r 之間的數據就被分成了三個部分,前面 p 到 q-1 之間都是小於 pivot 的,中間是 pivot,後面的 q+1 到 r 之間是大於 pivot 的。
  • 根據分治、遞歸的處理思想,可以用遞歸排序下標從 p 到 q-1 之間的數據和下標從 q+1 到 r 之間的數據,直到區間縮小為 1,就說明所有的數據都有序了。
  • 用遞推公式來將上面的過程寫出來的話,就是這樣:quick_sort(p…r) = quick_sort(p…q-1) + quick_sort(q+1, r)。
  • 終止條件:p >= r
/**
 * 快速排序
 * @param arr 排序數組
 * @param p 數組頭
 * @param r 數組尾
 */
public static void quickSort(int[] arr, int p, int r) {
    if (p >= r) 
        return;
    // 獲取分區點 並移動數據
    int q = partition(arr, p, r);
    quickSort(arr, p, q - 1);
    quickSort(arr, q + 1, r);
}

partition() 分區函數:

  • 是隨機選擇一個元素作為 pivot(一般情況下,可以選擇 p 到 r 區間的最後一個元素),然後對 arr[p…r] 分區,並將小於 pivot 的放右邊,大於的放左邊,函數返回 pivot 的下標。

partition() 的實現有兩種方式:

  • 一種是不考慮空間消耗,此時非常簡單。

    • 申請兩個臨時數組 X 和 Y,遍歷 arr[p…r],將小於 pivot 的元素都拷貝到臨時數組 X,將大於 pivot 的元素都拷貝到臨時數組 Y,最後再將數組 X 和數組 Y 中數據順序拷貝到arr[p…r]。
    /**
     * 分區函數方式一
     *
     * @param arr 數組
     * @param p   上標
     * @param r   下標
     * @return 函數返回 pivot 的下標
     */
    public static int partition1(int[] arr, int p, int r) {
        int[] xArr = new int[r - p + 1];
        int x = 0;
    
        int[] yArr = new int[r - p + 1];
        int y = 0;
    
        int pivot = arr[r];
    
        // 將小於 pivot 的元素都拷貝到臨時數組 X,將大於 pivot 的元素都拷貝到臨時數組 Y
        for (int i = p; i < r; i++) {
            // 小於 pivot 的存入 xArr 數組
            if (arr[i] < pivot) {
                xArr[x++] = arr[i];
            }
            // 大於 pivot 的存入 yArr 數組
            if (arr[i] > pivot) {
                yArr[y++] = arr[i];
            }
        }
    
        int q = x + p;
        // 再將數組 X 和數組 Y 中數據順序拷貝到 arr[p…r]
        for (int i = 0; i < x; i++) {
            arr[p + i] = xArr[i];
        }
        arr[q] = pivot;
        for (int i = 0; i < y; i++) {
            arr[q + 1 + i] = yArr[i];
        }
    
        return q;
    }
    
  • 另外一種有點類似選擇排序。

    • 我們通過游標 i 把 arr[p…r-1] 分成兩部分。arr[p…i-1] 的元素都是小於 pivot 的,我們暫且叫它“已處理區間”,arr[i…r-1] 是“未處理區間”。
    • 我們每次都從未處理的區間 arr[i…r-1] 中取一個元素 arr[j],與 pivot 對比,如果小於 pivot,則將其加入到已處理區間的尾部,也就是 arr[i]的位置。
    • 在數組某個位置插入元素,需要搬移數據,非常耗時。此時可以採用交換,在 O(1) 的時間複雜度內完成插入操作。需要將 arr[i] 與 arr[j] 交換,就可以在 O(1)時間複雜度內將 arr[j] 放到下標為 i 的位置。
    /**
     * 分區函數方式二
     * @param arr 數組
     * @param p   上標
     * @param r   下標
     * @return 函數返回pivot的下標
     */
    public static int partition2(int[] arr, int p, int r) {
        int pivot = arr[r];
        int i = p;
        for (int j = p; j < r; j++) {
            if (arr[j] < pivot) {
                if (i == j) {
                    ++i;
                } else {
                    int tmp = arr[i];
                    arr[i++] = arr[j];
                    arr[j] = tmp;
                }
            }
        }
        int tmp = arr[i];
        arr[i] = arr[r];
        arr[r] = tmp;
        return i;
    }
    

2.2、性能分析

  • 因為分區的過程涉及交換操作,如果數組中有兩個相同的元素,比如序列 6, 8, 7, 6, 3, 5, 9, 4,在經過第一次分區操作之後,兩個 6 的相對先後順序就會改變。所以,快速排序並不是穩定的排序算法
  • 按照上面的第二種分區方式,快速排序只涉及交換操作,所以空間複雜度為 Q(1),是原地排序算法
  • 時間複雜度為 Q(nlogn),最差為Q(n²)

三、兩者對比

歸併排序 快速排序
排序思想 處理過程由下到上,先處理子問題,然後在合併 由上到下,先分區,在處理子問題
穩定性
空間複雜度 Q(n) Q(1) 原地排序算法
時間複雜度 都為 O(nlogn) 平均為 O(nlogn),最差為 O(n²)
  • 歸併之所以是非原地排序算法,主要原因是合併函數無法在原地執行。快速排序通過設計巧妙的原地分區函數,可以實現原地排序,解決了歸併排序佔用太多內存的問題。
  • 歸併排序算法是一種在任何情況下時間複雜度都比較穩定的排序算法,這也使它存在致命的缺點,即歸併排序不是原地排序算法,空間複雜度比較高,是 O(n)。正因為此,它也沒有快排應用廣泛。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

※想知道最厲害的網頁設計公司"嚨底家"!

※別再煩惱如何寫文案,掌握八大原則!

※產品缺大量曝光嗎?你需要的是一流包裝設計!

※回頭車貨運收費標準

台中搬家公司費用怎麼算?

分類
發燒車訊

FAO:5月全球糧食供應鏈恐中斷 A股農業族群飆

摘錄自2020年3月31日聯合報報導

聯合國糧農組織(FAO)日前稱,受全球疫情影響,全球糧食供應鏈將於4月至5月中斷。而俄國、越南等國家為保證糧食供給,已宣布停止出口。A股農業族群今(31)日走強,金健米業再度飆漲停,京糧控股大漲8%,傲農生物、農發種業、萬向德農紛紛拉升。

金融網報導,其中,柬埔寨首相宣布受新冠肺炎疫情影響,將自4月5日起禁止部分大米出口。埃及自3月28日起未來3個月內停止各種豆類產品的出口;哈薩克斯坦禁止出口小麥麵粉、紅蘿蔔、糖和馬鈴薯;越南暫停簽署新的大米出口合約;俄國將每周評估情況,再決定是否實施出口禁令。

聯合國糧農組織(FAO)日前稱,受全球疫情影響,全球糧食供應鏈將於4月至5月中斷。而俄國、越南等國家為保證糧食供給,已宣布停止出口。

永續發展
土地利用
國際新聞
糧食

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※教你寫出一流的銷售文案?

※別再煩惱如何寫文案,掌握八大原則!

分類
發燒車訊

專家:新冠是人類忽視氣候變遷的後果

摘錄自2020年4月1日聯合報報導

聯合國開發計劃署的德利沃( Mandeep Dhaliwal),同時也是愛滋病、健康與發展小組主任,在3月31日的一場在線會議中表示,新冠疫情只是預告了將來全球暖化更嚴重的時候,人類即將面臨的公共衛生危機。 而人類如何應對新冠肺炎,將會啟示未來人們如何應對氣候變遷。

她說: 「透過COVID-19,我們可以看到它的影響比其他氣候危機更加急迫。 」她說,「我們再也不能忽視導致這一切後果的人類活動,我們需要做些甚麼。 」

人類摧毀樹木、擴大耕地,已經對生態造成威脅,促長了氣候變遷,讓人類更有機會接觸到來自其他動物的疾病。例如美國疾病與控制中心就表示,新冠病毒的源頭很可能來自蝙蝠,與武漢的一個野味市場有關。德利沃說,像是空氣污染這類環境問題,也讓人類的肺部變得更加脆弱,變得難以對抗新冠肺炎這種呼吸道疾病。

全球變遷
氣候變遷
國際新聞
武漢肺炎
蝙蝠與新興傳染病

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

※台北網頁設計公司全省服務真心推薦

※想知道最厲害的網頁設計公司"嚨底家"!

※推薦評價好的iphone維修中心

網頁設計最專業,超強功能平台可客製化

※別再煩惱如何寫文案,掌握八大原則!

分類
發燒車訊

研究:加倍保育工作 全球海洋有機會在30年內重現往日榮景

環境資訊中心綜合外電;姜唯 編譯;林大利 審校

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

南投搬家公司費用,距離,噸數怎麼算?達人教你簡易估價知識!

※教你寫出一流的銷售文案?

※超省錢租車方案

※回頭車貨運收費標準

分類
發燒車訊

美科學家探索水下古森林 發現新品種細菌

摘錄自2020年4月8日聯合報報導

美國科學家在阿拉巴馬州海灣水面下,發現一座保存良好的上古森林遺跡。探險團隊去年底進行水下遠征,帶回一截古木,並在當中發現不少新品種細菌,可能成為人類開發新藥的契機。

科學家推估,距今約6萬年前,這片森林的老樹枯倒、被沉積物覆蓋,再被升高的海洋淹沒。直到2004年的颶風伊凡掃過海床和沉積物才重現光明。採集到的古木因為被沉積物覆蓋,就像被鎖住6萬年,保存狀況非常完好,還能見到表面樹皮和內在顏色。研究團隊移除超過300種生物,並專注研究可將木材轉化為動物組織的船蠹(Shipworms),從中取出100個菌種。

研究團隊指出,他們找到許多新品種細菌,其中12個菌種正進行DNA定序,以評估能否用於製作新藥,目前至少已找出一種抗生素,正研究治療寄生蟲傳染的療效,也在研究新菌種可否製作紙張、紡織品、食品、動物飼料、精緻化學和可再生燃料。

生態保育
海洋
生物多樣性
國際新聞
美國
古森林
細菌

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

※Google地圖已可更新顯示潭子電動車充電站設置地點!!

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※別再煩惱如何寫文案,掌握八大原則!

網頁設計最專業,超強功能平台可客製化

※回頭車貨運收費標準

分類
發燒車訊

商業停擺意外有好空氣 印度人30年來首見喜馬拉雅山

摘錄自2020年4月10日自由時報報導

許多國家運用封鎖地區、暫停商家營業等方式防止武漢肺炎疫情傳播,意外造成空氣污染減緩的狀況,印度北部甚至可以看見數十年來未見的喜馬拉雅山,讓居民相當驚喜。

《CNN》報導,數十年來印度人首度可見喜馬拉雅山,原因在於地區封鎖減緩了空氣污染,印度北邊旁遮普邦居民現在可以看到喜馬拉雅山。有居民表示,這是近30年來第一次可以清楚看見山脈,太神奇了。近來印度因為商家關閉、汽車停駛、航空公司取消航班,空氣污染大幅降低。

報導指出,在印度全國封閉的第一週有85個城市空氣變好,據去年報告顯示,印度在世界空氣污染最嚴重的城市中,共有6個城市排名在前10名中。

公害污染
空氣污染
污染治理
國際新聞
印度
武漢肺炎
喜馬拉雅山
疫情看氣候與能源

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

南投搬家公司費用需注意的眉眉角角,別等搬了再說!

※教你寫出一流的銷售文案?

※回頭車貨運收費標準

※別再煩惱如何寫文案,掌握八大原則!

分類
發燒車訊

不只南極!北極上空臭氧層也出現史無前例巨大破洞

摘錄自2020年4月8日自由時報報導

南極上空臭氧層破洞長期以來備受各界關注,科學家近期卻發現,北極上空臭氧層也罕見出現破紀錄的巨洞,上次觀察到類似情況時,是在2011年春季,為九年內再度發生。

根據英國《衛報》報導,歐洲中期天氣預報中心哥白尼大氣監測局(CAMS)局長彭屈(Vincent-Henri Peuch)說,北極圈上方的臭氧層罕見出現破洞,過去幾天從太空和地面關注這個破洞,發現它的大小已經達到破紀錄的尺寸,這是北極上方大氣溫度異常降低所造成的結果。

彭屈指出,從近期的監控數據得知,北極上空發生異常的變動因子,這些因子使得臭氧層加速消耗,在化學反應的過程中,北極氣溫變得比平常更低,進而催化臭氧層的破壞,但是除非這個洞向南移動,否則不會對人類造成任何危險;若是它靠近人口稠密地區,大量紫外線就能透過臭氧層破洞直接照射在生物體上。

全球變遷
氣候變遷
國際新聞
北極
臭氧層破洞
臭氧層

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

※想知道最厲害的網頁設計公司"嚨底家"!

※別再煩惱如何寫文案,掌握八大原則!

※產品缺大量曝光嗎?你需要的是一流包裝設計!

※回頭車貨運收費標準

台中搬家公司費用怎麼算?

分類
發燒車訊

Google 密碼檢查工具將下放至舊系統,提供老手機更強化的安全性

Google 在近日宣布為 Android 推出著重於安全性的新功能,其中最重要的就是把過去於電腦版 Chrome 中推出的密碼檢查工具推廣到 Android 設備上,並且擴大下放到運行舊版 Android 系統的設備上,為用戶密碼提供跨越設備的安全把關。

Google 密碼檢查工具將下放至舊系統,提供老手機更強化的安全性

在過去,人們為了方便、好記,於是往往用最便利的方式來設定密碼,像是 Abc123、123456 等,66% 的美國人承認在多網站上使用同樣的較弱密碼,相信台灣很多人也是如此,使用這些共用密碼的帳戶也成為更容易受到攻擊的目標,因為只需攻破一個就能於擁有多個,每天也有很多新的數據外洩新聞讓人心惶惶。

在密碼成為過去式之前,Google 在 Google 帳戶與 Chrome 瀏覽器中推出了密碼檢查工具來幫助用戶檢查記憶於其中的密碼,而現在Google 更將這項功能推廣到 Android 上,在保護 Google 帳戶之餘進而更快速、輕鬆地使用自動填入來登入各種應用程式與服務。這項工具將會提供給搭載 Android 9 以上的設備,當你使用 Google 在手機應用中輸入密碼時,系統會根據已經洩漏的密碼清單(就是可能已經被竊取併發布在網路上的密碼)來進行檢查,告訴用戶該密碼是否在之前已經遭到外洩,並且引導用戶以正確的步驟來處理密碼問題。

除此之外,Google 還為 Android 推出另外五種功能,包含排程發送訊息,幫助盲人與難以查看螢幕的人士所設計的新版本 Talkback,更多免持的 Google 語音助理操作以及更多 Android Auto 新功能等,大家可以密切期待這些新功能的到來。

◎資料來源:Google

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

【其他文章推薦】

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※教你寫出一流的銷售文案?

※別再煩惱如何寫文案,掌握八大原則!

分類
發燒車訊

因應新法令!丹麥推出「性愛確認App」 行房前要先按一下

由於丹麥國會在2020年12月修法,將「性侵」的定義擴大,認定只要有其中一方「沒有明確同意」發生性行為,就可以認定是性侵。而有軟體開發商就此推出一款「同意發生性行為」的APP,不過推出至今,反映可以說是十分冷淡。

根據《每日郵報》報導指出,有鑑於丹麥修法擴大性侵定義的範圍,有開發商推出一款名為「iConsent」的軟體,使用者只要透過這個軟體,就可以發送出「想要發生性行為」的請求,另外一端使用者就可以透過軟體進行同意。比較特殊的地方是,這項同意的有效期限為24小時,但隨時可以撤回。

 

而除了使用者可以自行調出中間的同意與請求紀錄外,除非是涉及到刑事案件的調查,否則廠商表示不會與任何無相關的人公開數據。而使用者的數據平時也會存放在具有加密功能的伺服器中。

 

雖說「iConsent」的目的是要讓彼此雙方在「確認同意」的情形下計錄性行為,但他們也表示「iConsent的同意並非是獨立的,在性行為之前的確可以透過iConsent進行同意,但是在中間或是結束的過程,還是彼此雙方都要有明確的意願。」

 

iConsent的立意可以說是良好,但過於生硬的「確認」似乎讓使用者們對他的興致缺缺。有人認為,iConsent的同意,打破了原本那種「不說破」的氛圍,讓原本甜蜜浪漫的性愛,好像還要互相堤防似的,感覺很差。也有網友認為,任何一方依舊可以透過暴力、脅迫的手段,讓被害者「強迫同意」iConsent上的請求,反而變成「塑造偽證」的利器。

 

報導中也有性學專家表示,在性方面理解他人的意願,也是需要進行磨練與訓練的,的確沒有人能出生就理解,但是iConsent的存在,則是剝奪人們在這方面訓練的機會。

您也許會喜歡:

【推爆】終身$0月租 打電話只要1元/分

立達合法徵信社-讓您安心的選擇

【其他文章推薦】

網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!

※台北網頁設計公司全省服務真心推薦

※想知道最厲害的網頁設計公司"嚨底家"!

※推薦評價好的iphone維修中心

網頁設計最專業,超強功能平台可客製化

※別再煩惱如何寫文案,掌握八大原則!