iOS

【登壇・協賛情報】iOSDC Japan 2021

2021年9月17日(金)〜19日(日)に開催される iOSDC Japan 2021 にて、LINEはダイヤモンドスポンサーを務めます。また、当日はLINEのスポンサーセッションとして「LINEアプリのモバイル体験改善に向けた取り組み」について発表をします。

Zeplin + Prismを用いて、開発で利用する色の情報を簡単に生成・管理する

こんにちは、LINE スタンプメーカーでiOSアプリの開発をしているfreddiです。

LINE スタンプメーカーでは、Zeplinというツールを使ってデザイナーからの成果物をチーム間で共有しており、開発時でもデザインを反映させるために利用しています。Zeplinでは、開発者向けのツールの作成も容易にでき、Zeplin上の情報を簡単に開発者の手元に落とし込むことができます。その例の一つとして、Gettという会社がOpen Sourceで公開しているPrismというツールがあります。Prismでは色情報をZeplinから取得して、好きなフォーマットに変換することができます。

LINE iOS版のビルドパフォーマンスをBazelで改善

LINE iOS版のソースコードは、ローンチ以来、数百モジュールもの規模にまで成長しています。2019年末時点で、コード行数も140万行を超えており、現在もその増加ペースはとどまるところを知りません。一方、コードが大規模になると、開発者にとってはビルド時間が悩みの種ともなります。また、プロジェクトの成長に伴い、再現不可能な問題も増えていきました。 たとえば、ローカル環境で動くビルドがCIで動かなかったり、もしくはその逆が起こったり、といったものです。 そこで、一歩退いた目線に立ち、ビルドパフォーマンスと再現性を改善できる方法を考え始めました。   

【Team & Project】LINEアプリのiOSクライアント開発をしているチームを紹介します

LINEの開発組織のそれぞれの部門やプロジェクトについて、その役割や体制、技術スタック、今後の課題やロードマップなどを具体的に紹介していく「Team & Project」シリーズ。今回は、LINEアプリのiOSクライアント開発チームを紹介します。マネージャーの富家将己と朴盛民に話を聞きました。

LINEアプリのiOSクライアント開発チームのzoom会議の様子

iOS/Android Developers Night with HAKATA.swift開催レポート

9/25(水)にFukuoka Growth Next(FGN)でiOS/Android Developers Night with HAKATA.swiftを開催しました。今回は、SwiftコミュニティHAKATA.swiftとの共催です。
テーマとしては「クライアントアプリ開発」で、Android、iOS、そして両方に対応する開発環境のFlutterを取り上げました。

また、場所としていつものLINE Fukuokaカフェスペースではなく、天神大名エリアのFGNを使わせていただきました。

iOSのコード署名について

こんにちは。LINEでAIR ARMORの開発を担当しているSIM MINYOUNGです。AIR ARMORは、LINE GAME PLATFORMの一つであるAIRを構成する一つのセキュリティソリューションです。AIRについてはこのURLで紹介されました。前回のブログでは、Androidの署名の仕組みであるAPK Signingについて紹介されましたが、今回のブログでは、iOSのコード署名について紹介したいと思います。

コード署名は、ファイルの完全性を保証する、署名者(開発者)を確認する役割があります。Mach-O形式で表現されるiOSのバイナリーに対する完全性や署名者の検証は、後ほど説明するCode signature構造によって実現されています。

Unity向けLINE SDKへの挑戦:課題と選択肢

LINE SDK開発チームのWei Wangです。昨年のLINE DEVELOPER DAY 2018において、私たちは新しいLINE SDK for iOSとLINE SDK for Androidをオープンソースとしてリリースしました。このSDKは、LINEログインといくつかのAPIをアプリに組み込む機能を提供することで、それぞれのアプリに合わせた魅力的なユーザーエクスペリエンスを作ることをお手伝いします。

LINE iOS/Android Hackathon 2017

こんにちは。LINEのiOSアプリの開発を担当しているHyeonji Joです。2017年12月13日から15日にかけて開催されたLINE Hackathon 2017についてご紹介します。LINEはこれまで、iOS、Android担当開発者向けの社内ワークショップを開催してきました。セッションで情報を共有し、1日で終わるくらいのハッカソンを実施するといった内容です。ところが「たくさんの奇抜なアイデアをコードで書くには1日は短すぎる」という意見があったため、今回のワークショップはハッカソンのみでの開催となりました。時間が倍になったからといって、ハッカソン終了後の悔しさやもどかしさがなくなるわけではありません。ただ、十分な時間が与えられた分、成果物に対する満足度も格段にアップし、多彩で面白そうなテーマに触れられる、記憶に残るハッカソンになったのは間違いありません。

初日

今回のハッカソンにはLINEの日本、韓国、台湾オフィスからiOS、Android開発者とQAエンジニアが参加し、開催前に約30チームを結成。参加者の国籍がまちまちだったため、大会の進行・案内は英語で行われました。

UIにMetalが使えないかいろいろ試してみた話

こんにちは、LINEマンガiOSクライアント担当のMasaki Haga(@hagmas)と申します。この記事はLINE Advent Calendar 2017の9日目の記事です。

2014年になって初めて発表されたMetalですが、2017年になってさらに効率化、洗練され、VRのサポートも組み込まれたMetal2が発表されたり、Appleのさまざまなフレームワークの基幹部分にMetalが導入されていたりと、Metalへの注目がさらに高まりつつあります。そんなMetalに、みなさんは「Metalを触ってみたいけど、どこから、何から始めたらいいのかわからない」または「Metalに興味はあるんだけど、自分のアプリケーションにはいまいち関係なさそうだ」などと感じたことはないでしょうか。

私が担当しているLINEマンガのようなWebアプリケーションのiOSクライアントでは、ほとんどの場合、ゲームのような複雑な3D描写も大きなデータを並列計算で処理していくような場面もないかと思われます。しかし、「ユーザーにWOWと言わせるようなアプリ体験ってなんだろう」と考えている時、Metalのパワフルな並列計算と柔軟なAPIを使うことによって、UIKitでは実現できないような複雑で魅力的な描写をShaderで作りだして既存のUIにうまく溶け込ませることができれば、より新鮮なユーザー体験が実現できるかもしれないと思いたち、いろいろ試してみました。

ShaderでできることですのでOpenGLを使ってももちろん実現できますが、サンプルのプロジェクトなども複数掲載しておきましたので、それらを通してMetalのコーディングのしやすさや楽しさなど知ってもらえれば幸いです。