Upgrade to Pro — share decks privately, control downloads, hide ads and more …

On the Wear OS, How We developed LINE Application

On the Wear OS, How We developed LINE Application

3a35402ba4f955e81dce2c7a22609d5c?s=128

LINE DEVDAY 2021
PRO

November 11, 2021
Tweet

More Decks by LINE DEVDAY 2021

Other Decks in Technology

Transcript

  1. None
  2. Agenda - What is Wear OS? - LINE app on

    Wear OS - Challenges - Key takeaways
  3. What is Wear OS?

  4. LINE App History 2021 ? 2014 iPad FirefoxOS Chrome Browser

    2012 BlackBerry 2015 Watch OS Windows Mac 2013 Windows Phone Nokia Asha Firefox OS 2011 Android iOS
  5. - Wear OS 3.0 - Standalone app - Has basic

    features of LINE app - Ensure the security of LINE app - Login by QR Code LINE app on Wear OS
  6. Development process Focus on one or two needs of the

    target users Share business logic with Android project Make sure to meet Google's standard Use the Multi-APK delivery method because we already have LINE Android app on Play Store Implement Test Publish Design
  7. New Device Specs Optimized for the wrist ~1.5 inch Screen

    Small ~400mAh Battery Low ~16GB ~1.5GB RAM Memory Low
  8. - New UI/UX - Notifications - Sync data with Android

    app - Battery usage - Network usage Challenges
  9. New UI/UX

  10. UI/UX - Use Wear OS UI Library from Android Jetpack.

    - Must test Wear OS app against emulators: Wear OS Square 1.65” and Wear OS Round 1.84”.
  11. BoxInsetLayout - A screen shape-aware ViewGroup

  12. Swipe-to-dismiss gesture - Activities automatically support swipe-to-dismiss. - SwipeDismissFrameLayout.

  13. WearableRecyclerView - WearableRecyclerView RecyclerView WearableRecyclerView

  14. Notifications

  15. Notifications Notifications are bridged Notifications from Android app Notifications of

    Wear OS app
  16. Notifications on LINE app Installed LINE Android app No LINE

    notifications on Wear OS Logged in same account No Show LINE notifications on Wear OS Yes Disable bridged notifications from LINE Android app No Connected to Phone via BLE Yes Yes No
  17. Disable bridged notifications

  18. Disable bridged notifications

  19. Sync data with Android app

  20. Need data from LINE Android? - Get quick replies from

    LINE Android settings. - To check if LINE Android and Wear OS apps are logged in using same account.
  21. Sync data between Android and Wear OS Data Client Message

    Client Channel Client Data size >= 10KB < 10KB < 10KB Connection type Network Bluetooth Bluetooth Send data from one device to another device No, from the cloud to all the nodes Yes Yes, for both one way requests and bi- directional requests
  22. Get data from Android App WearableListenerService Android Wear OS Bluetooth

  23. Battery usage

  24. Data update on LINE Android time Foreground Background FirebaseMessagingService Fetch

    new data Fetch new data interval Decrypt data Save data to DB Update UI … onMessageReceived() Show notifications … Fetch new data Decrypt data Save data to DB Update UI …
  25. Data update on LINE Wear OS time Foreground Background Fetch

    new data Fetch new data interval Decrypt data Save data to DB Update UI … No background services
  26. Battery usage comparison Using Battery Historian Wear OS ~361mAh Android

    ~4000mAh Used 1.444mAh Used 60.0mAh
  27. Network usage

  28. Network on Smartwatch Mobile data/Wifi Bluetooth Mobile data/Wifi

  29. Reduce network usage - Only show the thumbnail of image,

    don’t download the original image. - Disable fancy features like animated sticker, gif images. - Limit supported message types.
  30. Network usages Only support some basic types and disable some

    features Android Wear OS Text Yes Yes Sticker Yes Yes Disabled animated or popup/sound effects Image Yes Yes Only show thumbnail Audio Yes Yes 30 seconds recording duration limit Video Yes No
  31. Network usage comparison When receive same image message Android Wear

    OS
  32. Memory allocation Memory allocation on the chat screen Android Wear

    OS
  33. Key takeaways - Content fits within the physical display area:

    Circle and Square. - Give users the content they need every time they raise their wrist. Optimize for the wrist Pay attention to optimizations - Take full advantage of Android app version: data, Bridged Notifications. - Our users cares much about battery, network, and memory usage. Enough is good as a feast - Focus on one or two needs of the target users.
  34. Thank you