SlideShare a Scribd company logo
Android Workshop
  Android application development &
       connectivity to Arduino
About Myself
My Hobby Projects




      just2us.com
My Full Time




  developer.hoiio.com
Hoiio API
Hoiio API




Mr Brown Podcast Over The Phone!!

     Call 6602 8104
Android Apps: txeet
Android Apps: txeet




                       ~250,000
                      downloads
Android Apps: SG 4D
Android Apps: Hoiio Phone
Android Apps: Hoiio Chat
Workshop Topics




1. Introduction to Android
2. Hello World!
3. Application Fundamentals
4. User Interfaces
5. Bluetooth
1. Introduction to Android
Android Workshop
Introduction



• Linux Kernel
• Application Framework
• Dalvik Virtual Machine
• App distributed as an .apk
• Ten billion apps downloaded
Introduction: Development Process
Introduction: Resources




• http://developer.android.com
• http://stackoverflow.com/
• http://www.google.com/
2. Hello World
Hello World: Installing SDK




1. Install Eclipse - the IDE
  http://www.eclipse.org/downloads/packages/eclipse-classic-371/indigosr1


2. Install Android SDK
  http://developer.android.com/sdk/index.html




    Guide from http://developer.android.com/sdk/installing.html
Hello World: Installing SDK



3. Install Android ADT Plugin for Eclipse
  http://developer.android.com/sdk/eclipse-adt.html#installing


  a. Eclipse > Help > Install new software

  b. Add repository https://dl-ssl.google.com/android/eclipse/

  c. Select “Developer Tools”

  d. Next, next, next and finish!




    Guide from http://developer.android.com/sdk/installing.html
Hello World: Installing SDK




4. Setup ADT Plugin
 a. Ecplise > Preferences > Android

 b. Point to your Android ADK Location (from step 2)




   Guide from http://developer.android.com/sdk/installing.html
Hello World: Create




• File > New > Android Project
Android Workshop
Hello World: Run




• Run > Run as > Android Application
• If running on actual device, do this first:
  Settings > Applications > Development and turn on USB debugging
Now you see “Hello World”, let’s look at the code..
3. Application Fundamentals
Fundamentals




• 4 components
 1. Activity
 2. Service
 3. ContentProvider
 4. BroadcastReceiver
Fundamentals: Activity


• Launch an Activity by calling
  startActivity(intent)

  Launch a known Activity
  Intent intent = new Intent(this, SignInActivity.class);
  startActivity(intent);


  Initiate a system launch
  Intent intent = new Intent(Intent.ACTION_SEND);
  intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
  startActivity(intent);
Fundamentals: Activity




• Activities form a stack
• Functions to handle events:
  onCreate, onResume, onPause, etc
Android Workshop
Fundamentals: Activity




•   Activity must be declared in AndroidManifest.xml


    <manifest ... >
      <application ... >
          <activity android:name=".ExampleActivity" />
          ...
      </application ... >
      ...
    </manifest >
Fundamentals: Service




•   Service or Thread ?

•   Service runs in the background, even when user is not
    interacting with your app.

•   To start, call startService()

•   Similar to Activity, has its lifecycle and various event
    callbacks.
Fundamentals: ContentProvider

• A way to share data across applications,
   including apps such as phonebook,
   calendar, etc.
• In other words, you can access the
   phonebook using a ContentProvider
• Have query, insert, delete methods (SQLite)
ContentResolver cr = getContentResolver();
cr.query(“content://android.provider.Contacts.Phones.CONTACT_URI”,
         projection,
         selection, selectionArg,
         sortOrder)
Fundamentals: ContentProvider




    Let’s look at a sample code
4. User Interfaces
User Interfaces




• 2 ways to construct UI
 1. XML
 2. Code
User Interfaces: XML
                         /res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello"
        />
</LinearLayout>




    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
    }
User Interfaces: Code

package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class HelloAndroid extends Activity {
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       TextView tv = new TextView(this);
       tv.setText("Hello, Android");
       setContentView(tv);
   }
}
UI Layouts




LinearLayout
UI Layouts




TableLayout
UI Layouts




RelativeLayout
View Hierarchy




ViewGroup: Layout or container view
View: Android UI component, view or widgets
View Hierarchy
UI Views




• Look at “Hello View” tutorial
    •   http://developer.android.com/resources/tutorials/views/index.html

•   Also look at “Api Demo” sample code
User Interfaces




• Common UI Patterns
  http://www.androidpatterns.com/
Change view on a set of data
Select multiple items
dashboard
5. Bluetooth
Bluetooth


•   Bluetooth Modem, aka BlueSMiRF Gold, aka Firefly

•   http://www.sparkfun.com/products/582

• Specifications
 • Extremely small
 • Operating Voltage: 3.3V-6V
 • Serial communications: 2400-115200bps
Bluetooth: The Pins


• Pins from left to right
 • GND
 • CTS-1
 • VCC
 • TX-0
 • RX-1
 • RTS-0
Bluetooth: Connect to Android



• A guide from instructables.com
    http://www.instructables.com/id/Android-talks-to-Arduino/?ALLSTEPS




•   !!! NOTE: Arduino version 1.0 does not work with
    the libraries. Download version 0023 instead
    http://arduino.cc/en/Main/Software
Bluetooth: Connect to Android


1. Connect from Bluetooth modem to Arduino
 •   VCC to +3.3V
 •   GND to GND
 •   TX-0 to PIN-2 (RX)
 •   RX-1 to PIN-3 (TX)



 If works, you will see a red LED blinking
Bluetooth: Connect to Android
Bluetooth: Connect to Android


 2. Import NewSoftSerial library to Arduino
   •   Provides an interrupt architecture (vs SoftwareSerial)

   •   Copy /Library/NewSoftSerial to:

       •   Mac: ~/Documents/Arduino/libraries/

       •   Windows: My DocumentsArduinolibraries

   •   Instructions on how to use at http://arduiniana.org/libraries/
       newsoftserial/




You will see NewSoftSerial in Sketch > Import Library >
Bluetooth: Connect to Android




3. Upload sketch to Arduino
 • /Sample Code/bluetooth/bluetooth.pde
Bluetooth: Connect to Android


4. Open BluetoothChat, an Android sample app
 •   File > New > Android Project

 •   Select target Android 2.3.3

 •   Create project from existing sample > BluetoothChat > Finish

 •   In BluetoothChatService, change the UUID to
     "00001101-0000-1000-8000-00805F9B34FB"

 •   Build and deploy to phone
Bluetooth: Connect to Android




5. To send a message
 •   Pair up: Settings > Wireless & network > Bluetooth > Select FireFly-xxxx.
     Password is 1234.

 •   Connect: Open BluetoothChat app. Press Menu > Connect > FireFly-xxxx

 •   When connected, Bluetooth modem will have green light

 •   Type a message and send. If success, PIN 13 will light up for 5 sec.
Bluetooth: Connect to Android




6. Change baud rate to 57,000
 •   Refer to http://www.instructables.com/id/Change-BAUD-rate-on-BlueSMiRF-
     Gold/

 •   Need FTDI Basic chip..
USB Host Shield




A guide from circuitathome

More Related Content

PDF
Android Workshop 2013
PDF
Android Development: Build Android App from Scratch
PPTX
Android Development for Beginners with Sample Project - Day 1
PPTX
What’s new in aNdroid [Google I/O Extended Bangkok 2016]
PPTX
Android Development Made Easy - With Sample Project
PPT
Android development orientation for starters v4 seminar
PPTX
Android Study Jams - Induction
PPT
android-tutorial-for-beginner
Android Workshop 2013
Android Development: Build Android App from Scratch
Android Development for Beginners with Sample Project - Day 1
What’s new in aNdroid [Google I/O Extended Bangkok 2016]
Android Development Made Easy - With Sample Project
Android development orientation for starters v4 seminar
Android Study Jams - Induction
android-tutorial-for-beginner

What's hot (20)

PDF
Being Epic: Best Practices for Android Development
PPTX
Android application development the basics (2)
PPT
Android Application Development Using Java
PPT
Google Android
PPTX
Apple Watch and WatchKit - A Technical Overview
PDF
Android Development Slides
ODP
Anatomy of android application
PPTX
Android Studio Overview
KEY
Android app development basics
PPTX
Anroid Tutorial Beginner level By SAMRAT TAYADE
PDF
Android development basics
PDF
Android - From Zero to Hero @ DEVit 2017
PPTX
Android ppt
PPTX
Android overview
PDF
Android 6.0 Marshmallow - Everything you need to know !
PDF
Android Programming Basics
ODP
Intro To Android App Development
PDF
Gradle for Android Developers
ZIP
Android Application Development
PPTX
Fire up your mobile app!
Being Epic: Best Practices for Android Development
Android application development the basics (2)
Android Application Development Using Java
Google Android
Apple Watch and WatchKit - A Technical Overview
Android Development Slides
Anatomy of android application
Android Studio Overview
Android app development basics
Anroid Tutorial Beginner level By SAMRAT TAYADE
Android development basics
Android - From Zero to Hero @ DEVit 2017
Android ppt
Android overview
Android 6.0 Marshmallow - Everything you need to know !
Android Programming Basics
Intro To Android App Development
Gradle for Android Developers
Android Application Development
Fire up your mobile app!
Ad

Similar to Android Workshop (20)

KEY
Android Workshop
PDF
Android dev o_auth
PDF
Mobile application and Game development
PDF
Android tutorial1
KEY
Android Scripting
PPTX
Android Applications Development: A Quick Start Guide
PPT
Engineering and Industrial Mobile Application (APP) Development
PDF
Mobile Software Engineering Crash Course - C03 Android
PPT
Getting started with android dev and test perspective
PPTX
Android
PDF
Android studio
PPT
Android Studio Software Installation steps in windows.
PPTX
Mobile web development
PPT
Introduction to android sessions new
PPT
State ofappdevelopment
PPT
Android - Anroid Pproject
PPTX
Basics of Android
PPTX
How to create android applications
PDF
Android - Open Source Bridge 2011
Android Workshop
Android dev o_auth
Mobile application and Game development
Android tutorial1
Android Scripting
Android Applications Development: A Quick Start Guide
Engineering and Industrial Mobile Application (APP) Development
Mobile Software Engineering Crash Course - C03 Android
Getting started with android dev and test perspective
Android
Android studio
Android Studio Software Installation steps in windows.
Mobile web development
Introduction to android sessions new
State ofappdevelopment
Android - Anroid Pproject
Basics of Android
How to create android applications
Android - Open Source Bridge 2011
Ad

More from Junda Ong (11)

PDF
Opportunity with audio
PDF
Enhance offline experience
PDF
Disrupt flyer
KEY
Build your product 10x faster
KEY
Build travel apps the easy way
KEY
Hoiio API: An introduction
KEY
Build Voice App the Easy Way
KEY
How mac fonts appear in slideshare?
PDF
Pull Toy Design
PPTX
NYP Talk - Sharing Mobile Development Experience
PPTX
Using AppEngine for Mobile Apps
Opportunity with audio
Enhance offline experience
Disrupt flyer
Build your product 10x faster
Build travel apps the easy way
Hoiio API: An introduction
Build Voice App the Easy Way
How mac fonts appear in slideshare?
Pull Toy Design
NYP Talk - Sharing Mobile Development Experience
Using AppEngine for Mobile Apps

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPT
Teaching material agriculture food technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Cloud computing and distributed systems.
PDF
Encapsulation theory and applications.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
cuic standard and advanced reporting.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Digital-Transformation-Roadmap-for-Companies.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Understanding_Digital_Forensics_Presentation.pptx
Teaching material agriculture food technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Per capita expenditure prediction using model stacking based on satellite ima...
Network Security Unit 5.pdf for BCA BBA.
Cloud computing and distributed systems.
Encapsulation theory and applications.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
cuic standard and advanced reporting.pdf
Unlocking AI with Model Context Protocol (MCP)
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Spectral efficient network and resource selection model in 5G networks

Android Workshop

  • 1. Android Workshop Android application development & connectivity to Arduino
  • 3. My Hobby Projects just2us.com
  • 4. My Full Time developer.hoiio.com
  • 6. Hoiio API Mr Brown Podcast Over The Phone!! Call 6602 8104
  • 8. Android Apps: txeet ~250,000 downloads
  • 12. Workshop Topics 1. Introduction to Android 2. Hello World! 3. Application Fundamentals 4. User Interfaces 5. Bluetooth
  • 15. Introduction • Linux Kernel • Application Framework • Dalvik Virtual Machine • App distributed as an .apk • Ten billion apps downloaded
  • 17. Introduction: Resources • http://developer.android.com • http://stackoverflow.com/ • http://www.google.com/
  • 19. Hello World: Installing SDK 1. Install Eclipse - the IDE http://www.eclipse.org/downloads/packages/eclipse-classic-371/indigosr1 2. Install Android SDK http://developer.android.com/sdk/index.html Guide from http://developer.android.com/sdk/installing.html
  • 20. Hello World: Installing SDK 3. Install Android ADT Plugin for Eclipse http://developer.android.com/sdk/eclipse-adt.html#installing a. Eclipse > Help > Install new software b. Add repository https://dl-ssl.google.com/android/eclipse/ c. Select “Developer Tools” d. Next, next, next and finish! Guide from http://developer.android.com/sdk/installing.html
  • 21. Hello World: Installing SDK 4. Setup ADT Plugin a. Ecplise > Preferences > Android b. Point to your Android ADK Location (from step 2) Guide from http://developer.android.com/sdk/installing.html
  • 22. Hello World: Create • File > New > Android Project
  • 24. Hello World: Run • Run > Run as > Android Application • If running on actual device, do this first: Settings > Applications > Development and turn on USB debugging
  • 25. Now you see “Hello World”, let’s look at the code..
  • 27. Fundamentals • 4 components 1. Activity 2. Service 3. ContentProvider 4. BroadcastReceiver
  • 28. Fundamentals: Activity • Launch an Activity by calling startActivity(intent) Launch a known Activity Intent intent = new Intent(this, SignInActivity.class); startActivity(intent); Initiate a system launch Intent intent = new Intent(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_EMAIL, recipientArray); startActivity(intent);
  • 29. Fundamentals: Activity • Activities form a stack • Functions to handle events: onCreate, onResume, onPause, etc
  • 31. Fundamentals: Activity • Activity must be declared in AndroidManifest.xml <manifest ... >   <application ... >       <activity android:name=".ExampleActivity" />       ...   </application ... >   ... </manifest >
  • 32. Fundamentals: Service • Service or Thread ? • Service runs in the background, even when user is not interacting with your app. • To start, call startService() • Similar to Activity, has its lifecycle and various event callbacks.
  • 33. Fundamentals: ContentProvider • A way to share data across applications, including apps such as phonebook, calendar, etc. • In other words, you can access the phonebook using a ContentProvider • Have query, insert, delete methods (SQLite) ContentResolver cr = getContentResolver(); cr.query(“content://android.provider.Contacts.Phones.CONTACT_URI”, projection, selection, selectionArg, sortOrder)
  • 34. Fundamentals: ContentProvider Let’s look at a sample code
  • 36. User Interfaces • 2 ways to construct UI 1. XML 2. Code
  • 37. User Interfaces: XML /res/layout/main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout> @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); }
  • 38. User Interfaces: Code package com.example.helloandroid; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloAndroid extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        TextView tv = new TextView(this);        tv.setText("Hello, Android");        setContentView(tv);    } }
  • 42. View Hierarchy ViewGroup: Layout or container view View: Android UI component, view or widgets
  • 44. UI Views • Look at “Hello View” tutorial • http://developer.android.com/resources/tutorials/views/index.html • Also look at “Api Demo” sample code
  • 45. User Interfaces • Common UI Patterns http://www.androidpatterns.com/
  • 46. Change view on a set of data
  • 50. Bluetooth • Bluetooth Modem, aka BlueSMiRF Gold, aka Firefly • http://www.sparkfun.com/products/582 • Specifications • Extremely small • Operating Voltage: 3.3V-6V • Serial communications: 2400-115200bps
  • 51. Bluetooth: The Pins • Pins from left to right • GND • CTS-1 • VCC • TX-0 • RX-1 • RTS-0
  • 52. Bluetooth: Connect to Android • A guide from instructables.com http://www.instructables.com/id/Android-talks-to-Arduino/?ALLSTEPS • !!! NOTE: Arduino version 1.0 does not work with the libraries. Download version 0023 instead http://arduino.cc/en/Main/Software
  • 53. Bluetooth: Connect to Android 1. Connect from Bluetooth modem to Arduino • VCC to +3.3V • GND to GND • TX-0 to PIN-2 (RX) • RX-1 to PIN-3 (TX) If works, you will see a red LED blinking
  • 55. Bluetooth: Connect to Android 2. Import NewSoftSerial library to Arduino • Provides an interrupt architecture (vs SoftwareSerial) • Copy /Library/NewSoftSerial to: • Mac: ~/Documents/Arduino/libraries/ • Windows: My DocumentsArduinolibraries • Instructions on how to use at http://arduiniana.org/libraries/ newsoftserial/ You will see NewSoftSerial in Sketch > Import Library >
  • 56. Bluetooth: Connect to Android 3. Upload sketch to Arduino • /Sample Code/bluetooth/bluetooth.pde
  • 57. Bluetooth: Connect to Android 4. Open BluetoothChat, an Android sample app • File > New > Android Project • Select target Android 2.3.3 • Create project from existing sample > BluetoothChat > Finish • In BluetoothChatService, change the UUID to "00001101-0000-1000-8000-00805F9B34FB" • Build and deploy to phone
  • 58. Bluetooth: Connect to Android 5. To send a message • Pair up: Settings > Wireless & network > Bluetooth > Select FireFly-xxxx. Password is 1234. • Connect: Open BluetoothChat app. Press Menu > Connect > FireFly-xxxx • When connected, Bluetooth modem will have green light • Type a message and send. If success, PIN 13 will light up for 5 sec.
  • 59. Bluetooth: Connect to Android 6. Change baud rate to 57,000 • Refer to http://www.instructables.com/id/Change-BAUD-rate-on-BlueSMiRF- Gold/ • Need FTDI Basic chip..
  • 60. USB Host Shield A guide from circuitathome

Editor's Notes

  • #2: \n
  • #3: \n
  • #4: \n
  • #5: \n
  • #6: \n
  • #7: \n
  • #8: \n
  • #9: \n
  • #10: \n
  • #11: \n
  • #12: \n
  • #13: \n
  • #14: http://developer.android.com/guide/basics/what-is-android.html\n\nhttp://kschang.hubpages.com/slide/Cupcake-Donut-Eclair-Froyo-Gingerbread-Honeycomb-Android-OS-Version-Codenames-and-Why/4609964\n
  • #15: http://www.android.com/about\n
  • #16: Android != Linux\nUsed Linux security, mem mgmt, threading, etc\nEach app, 1 VM instance\nOptimized for mobile\nAndroid Package. A zip. Like Jar.\n\n
  • #17: http://developer.android.com/guide/developing/index.html\n
  • #18: http://developer.android.com/guide/basics/what-is-android.html\n
  • #19: \n
  • #20: \n
  • #21: \n
  • #22: \n
  • #23: http://developer.android.com/resources/tutorials/hello-world.html\n
  • #24: http://developer.android.com/resources/tutorials/hello-world.html\n
  • #25: http://developer.android.com/resources/tutorials/hello-world.html\n
  • #26: \n
  • #27: http://developer.android.com/guide/topics/fundamentals.html\n
  • #28: http://developer.android.com/guide/topics/fundamentals.html\nActivity - A single screen (UI)\nService - background activity eg. play music globally\nContentProvider - Even share data across apps. SQLite. eg. contacts. ContentResolver\nBroadcastReceiver - Responds to system wide broadcast announcements. Usually from the system eg. Send Message, Picture captured\n
  • #29: \n
  • #30: \n
  • #31: Activity lifecycle\n
  • #32: \n
  • #33: http://developer.android.com/guide/topics/fundamentals/services.html\n
  • #34: http://developer.android.com/guide/topics/providers/content-providers.html\nhttp://developer.android.com/reference/android/provider/package-summary.html\n
  • #35: http://developer.android.com/guide/topics/providers/content-providers.html\nhttp://developer.android.com/reference/android/provider/package-summary.html\n
  • #36: http://developer.android.com/guide/topics/fundamentals.html\n
  • #37: \n
  • #38: \n
  • #39: \n
  • #40: http://developer.android.com/guide/topics/ui/layout-objects.html \n
  • #41: http://developer.android.com/guide/topics/ui/layout-objects.html \n
  • #42: http://developer.android.com/guide/topics/ui/layout-objects.html \n
  • #43: \n
  • #44: \n
  • #45: http://developer.android.com/reference/android/widget/package-summary.html\n
  • #46: \n
  • #47: \n
  • #48: \n
  • #49: \n
  • #50: \n
  • #51: \n
  • #52: \n
  • #53: \n
  • #54: \n
  • #55: \n
  • #56: http://www.arduino.cc/en/Hacking/Libraries\n
  • #57: \n
  • #58: \n
  • #59: \n
  • #60: http://www.sparkfun.com/products/9716\n
  • #61: http://www.circuitsathome.com/mcu/exchanging-data-between-usb-devices-and-android-phone-using-arduino-and-usb-host-shield\n\nhttps://github.com/felis/USB_Host_Shield_2.0\n\n