Category Archives: Front-End

為什麼我們使用Kotlin開發LINE Creators Studio

前言

哈囉大家好,我是 Freddie Wang, LINE Fukuoka 開發室的軟體工程師。目前擔任 LINE Creators Studio Android 版本的開發。我們最近剛剛完成了 LINE Creators Studio 的 Android 版本。LINE Creators Sudio是 LINE 最新推出的應用程式,可以讓用戶輕鬆的製作自己的貼圖並且上架販賣。在 Android 的版本上我們使用 Kotlin 來開發這個應用程式。所以我想透過此篇文章來分享一下為什麼我們使用 Kotlin 開發以及我們使用了哪些功能。

目前 LINE Creators Studio 只在日本上架,預計之後會在其他地區推出。

Kotlin的優點與主要功能

在今年的 Google IO 17上, Google 正式宣佈將從 Android Studio 3.0 開始提供 Kotlin 的支援,這對 Android 的開發者來說是一個令人非常振奮的消息。在 2016 年底,我們開始了 LINE Creators Studio 的開發工作,並且需要在短時間完成一個 MVP (Minimum Viable Product)。在那個時間點,雖然 Kotlin 1.0 已經正式推出了,但我們小組裡面還沒有人有用過 Kotlin 開發產品的經驗,所以我們在正式開發前花了一點時間來研究 Kotlin,經過內部討論後,最後決定試著用 Kotlin 來開發 LINE Creators Studio。

為什麼用Kotlin

我們是根據以下幾個原因決定使用 Kotlin.

100% interoperable with Java

Kotlin 其中一個非常讚的特性是完全相容 Java,所以你可以在一個 project 裡面同時使用 Kotlin 和 Java 而不會有任何相容性的問題。雖然 LINE Creators Studio 是一個全新的專案,但是我們仍然需要使用一些很棒的函式庫,像 Dagger 2、Retrofit、RxJava 等等。

Concise syntax

Kotlin 最初是為了解決一些 Java 設計不便的地方而設計的,而其中一個主要的目的就是要能比 Java 寫出更簡潔的程式碼,而這一點在我們小組裡面,更是重要的一個因素。

Reduced dependencies

Kotlin 本身就帶了一個簡潔的標準函式庫,而且在大多數的應用上可以用來取代一些知名的大型 Java 函式庫,像是 Guava 等。在 Server 和 Desktop 應用領域上,使用這類大型的函式庫基本上沒有什麼問題。但是在 Android 的開發上就會造成一些麻煩。主要的原因就是 Android 的 Dalvik JVM 有上限 65K 的問題,基本上需要避免使用大型的 Java 函式庫。而最新的 Kotlin 標準函式庫 1.1.3-2 版只有6306個(參考連結) 函式, 所以可以有效地減輕這個問題。

Compatible with old Android devices

Kotlin 1.0 是基於 Java 6,所以使用 Kotlin 開發基本上可以在任何的 Android 2.3 版以上的裝置運行,這對於一個 Android 應用程式開發者來說是非常重要的,畢竟使用最新版本 Android 的用戶還是比較少一點。

使用LINE Notify傳送貼圖與上傳圖像

嗨!我的名字是長谷部良輔,負責LINE Notify的開發工作。

在前面的文章中,我們介紹了如何藉由命令列模式使用LINE Notify發送訊息給LINE。今天我將要介紹LINE Notify API上的二個新功能:傳送貼圖與上傳圖像。

傳送貼圖

在上一篇文章中所展示的範例是使用LINE Notify將Jenkins的建置結果發送到LINE。在那個範例中,使用了傳送一張饅頭人嘲笑的圖片來展示如何通知我們建置失敗了。正是在那段時間我們有了個新想法:「為什麼不讓LINE Notify傳送貼圖與圖像呢?」

我們認為傳送貼圖將會使LINE Notify更加「LINE化」,那就是我們決定開發這個功能的原因。

從命令列傳送貼圖

我們試試看利用curl指令傳送一張貼圖。

$ curl -X POST https://notify-api.line.me/api/notify -H 'Authorization: Bearer
YOUR_PERSONAL_ACCESS_TOKEN' -F 'message=test' -F 'stickerPackageId=1' -F 'stickerId=113'

藉由命令列模式使用LINE Notify發送訊息到LINE

前言

嗨!我的名字是渡辺博文,負責LINE Notify的開發工作。在這篇文章中,我想要分享開發者如何能夠直接藉由命令列模式使用LINE Notify發送訊息到LINE。

目前要傳送系統訊息到LINE必須要有Bot API試用帳號(譯者按:目前此類型帳號已停用)或Business Connect帳號。雖然這兩者都可被Messaging API取代並提供許多重要的功能,但是它們需要比較進階的程式撰寫。

LINE Notify是一種具有特定功能的API,簡化了將訊息發送到LINE的流程。

使用cURL發送訊息

透過LINE Notify產生你自己的「personal access token」,你便能夠藉此來發送一個HTTP POST請求到API端點。在此任何可發送HTTP請求的方式皆可使用。在本文中,讓我們來看看如何使用HTTP客戶端工具cURL來完成訊息傳送。