private static String TAG = BluetoothUtils.class.getSimpleName();

Size: px
Start display at page:

Download "private static String TAG = BluetoothUtils.class.getSimpleName();"

Transcription

1 import android.bluetooth.bluetoothadapter; import android.bluetooth.bluetoothdevice; import android.bluetooth.bluetoothsocket; import android.content.context; import android.content.intent; import android.util.log; import android.widget.toast; import java.io.ioexception; import java.io.inputstream; import java.io.outputstream; import java.lang.reflect.invocationtargetexception; import java.util.set; import java.util.uuid; public class BluetoothUtils { private static String TAG = BluetoothUtils.class.getSimpleName(); private static Context context; public static void setcontext(context c) {context=c; private static BluetoothSocket socket; private static BluetoothDevice device; private static OutputStream outputstream; private static InputStream inputstream; private static BluetoothAdapter bluetoothadapter; private static byte[] readbuffer; private static int readbufferposition; private static String data; private static int counter; private static volatile boolean stopworker; private static Thread workerthread; private static volatile boolean initialized = false; public static String getdata() { return data; public static void initialize() { checkbluetoothstate(); findbt(); openbt(); // initialize() public static void checkbluetoothstate() { bluetoothadapter = BluetoothAdapter.getDefaultAdapter(); if (bluetoothadapter == null) { AndroidUtils.makeToast("Bluetooth is not supported.", Toast.LENGTH_LONG);

2 else{ if (bluetoothadapter.isenabled()) { if(bluetoothadapter.isdiscovering()) { AndroidUtils.makeToast("Bluetooth is currently in device discovery process.", Toast.LENGTH_SHORT); else { AndroidUtils.makeToast("Bluetooth is enabled", Toast.LENGTH_SHORT); else { AndroidUtils.makeToast("Bluetooth is NOT enabled!", Toast.LENGTH_SHORT); Intent enablebtintent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); enablebtintent.addflags(intent.flag_activity_new_task); if( context!= null ) context.startactivity(enablebtintent); // checkbluetoothstate() public static void findbt() { if(bluetoothadapter == null) { AndroidUtils.makeToast("No bluetooth adapter available", Toast.LENGTH_SHORT); if(!bluetoothadapter.isenabled()) { Intent enablebtintent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); enablebtintent.addflags(intent.flag_activity_new_task); context.startactivity(enablebtintent); Set<BluetoothDevice> paireddevices = bluetoothadapter.getbondeddevices(); if(paireddevices.size() > 0) { for(bluetoothdevice device : paireddevices) { // name of BT device if(device.getname().equals("sunrise")) { BluetoothUtils.device = device; Log.i(TAG, "Device " + device.getname() + " found."); AndroidUtils.makeToast("Bluetooth device found", Toast.LENGTH_SHORT); break; // findbt() public static void openbt() { UUID uuid = UUID.fromString(" f9b34fb"); //Standard SerialPortService ID if( device!=null ) { //if( socket==null ) { socket = device.createrfcommsockettoservicerecord(uuid);

3 if(!socket.isconnected()) socket.connect(); outputstream = socket.getoutputstream(); inputstream = socket.getinputstream(); catch (IOException e) { socket.close(); Log.e(TAG, "socket connection failed, trying fallback..."); socket =(BluetoothSocket) device.getclass().getmethod("createrfcommsocket", new Class[] {int.class).invoke(device,1); if(!socket.isconnected()) socket.connect(); outputstream = socket.getoutputstream(); inputstream = socket.getinputstream(); Log.e(TAG, "Connected"); initialized = true; catch (IOException e1) { Log.e(TAG, e1.getmessage()); catch (InvocationTargetException e1) { e1.printstacktrace(); catch (NoSuchMethodException e1) { e1.printstacktrace(); catch (IllegalAccessException e1) { e1.printstacktrace(); // openbt() public static void senddata(string data) { String msg = data; if( outputstream==null ) openbt(); if( outputstream!= null ) outputstream.write(msg.getbytes()); catch(ioexception e) { Log.e(TAG, e.getmessage()); // senddata() public static void closebt() throws IOException { if( outputstream!=null ) outputstream.close(); if( inputstream!=null ) inputstream.close(); if( socket!=null ) socket.close(); // closebt()

4 public static void beginlistenfordata() { final byte delimiter = 10; //This is the ASCII code for a newline character stopworker = false; readbufferposition = 0; readbuffer = new byte[1024]; workerthread = new Thread(new Runnable() { public void run() { while(!thread.currentthread().isinterrupted() &&!stopworker) { if( inputstream!=null ) { int bytesavailable = inputstream.available(); if (bytesavailable > 0) { byte[] packetbytes = new byte[bytesavailable]; inputstream.read(packetbytes); for (int i = 0; i < bytesavailable; i++) { byte b = packetbytes[i]; if (b == delimiter) { byte[] encodedbytes = new byte[readbufferposition]; System.arraycopy(readBuffer, 0, encodedbytes, 0, encodedbytes.length); data = new String(encodedBytes, "US-ASCII"); Log.d(TAG, "Data received: " + data); if( data.contains("h") && data.contains("m") && data.contains("a") && data.contains("b") ) { //decode(); stopworker = true; return; readbufferposition = 0; else { readbuffer[readbufferposition++] = b; catch (IOException ex) { stopworker = true; ); workerthread.start(); // beginlistenfordata() public static void stoplistenfordata() { stopworker = true; // stoplistenfordata() public static TimeAlarm decode () { TimeAlarm value=null;

5 // e.g. ch11m23a6b10 if( data!=null ) { Log.i(TAG, "Read via bluetooth: " + data); if( data.contains("h") && data.contains("m") && data.contains("a") && data.contains("b") ) { int hpos = data.indexof("h"); int mpos = data.indexof("m"); int apos = data.indexof("a"); int bpos = data.indexof("b"); // TimeAlarm(int h, int m, int ah, int am) value = new TimeAlarm(Integer.valueOf(data.substring(hPos + 1, mpos )), Integer.valueOf(data.substring(mPos + 1, apos )), Integer.valueOf(data.substring(aPos + 1, bpos)), Integer.valueOf(data.substring(bPos + 1, data.length()))); // end listen for data thread stopworker=true; data = ""; return value; return value; // decode() public static void setdebugmode() { String command = "de"; // setdebugmode() public static void settime(int hour, int minute) { String command = i"; String h = String.valueOf(hour); if (h.length() == 1) { command +="0"; command += h; command += ":"; String m = String.valueOf(minute); if (m.length() == 1) { command += "0"; command += m; // settime() public static void setalarm(int hour, int minute) {

6 String command = "s"; String h = String.valueOf(hour); if (h.length() == 1) { command +="0"; command += h; command += ":"; String m = String.valueOf(minute); if (m.length() == 1) { command += "0"; command += m; // setalarm() public static void resetalarm() { String command = "zz"; // resetalarm() public static void snooze() { String command = "kz"; // snooze() public static void alarmoff() { String command = "tz"; // alarmoff() public static void clearbuffers() { String command = "lz"; // clearbuffers() public static void moodlight(int number) { String command = "m"; command += String.valueOf(number); // clearbuffers() public static void rainbow(int number) { String command = "r";

7 command += String.valueOf(number); // rainbow() public static void nightmode(int number) { String command = "y"; command += String.valueOf(number); // nightmode()

// MainActivity.java ; Noah Spenser; Senior Design; Diabetic Breathalyzer

// MainActivity.java ; Noah Spenser; Senior Design; Diabetic Breathalyzer // MainActivity.java ; Noah Spenser; Senior Design; Diabetic Breathalyzer package com.noahspenser.seniordesign; import android.os.parcel; import android.os.parcelable; import android.support.v7.app.appcompatactivity;

More information

Project documentation

Project documentation Project documentation project title: Keyboard interfacing with android phone Team Members: Aashish Gupta, Aditya Aggarwal, Chetan Chauhan, Lohit Jain Team Mentor: Nitish Srivastava, Kapil Dev Advani Basic

More information

Peace of Mind: Child-Alert System

Peace of Mind: Child-Alert System Peace of Mind: Child-Alert System A thesis submitted to the Faculty of the Electrical & Computer Engineering Technology Program of the University of Cincinnati This document is a partial fulfillment of

More information

Bluetooth. Mobila applikationer och trådlösa nät HI /3/2013. Lecturer: Anders Lindström,

Bluetooth. Mobila applikationer och trådlösa nät HI /3/2013. Lecturer: Anders Lindström, Mobila applikationer och trådlösa nät HI1033 Lecturer: Anders Lindström, anders.lindstrom@sth.kth.se Lecture 7 Today s topics Bluetooth NFC Bluetooth 1 Bluetooth Wireless technology standard for exchanging

More information

Motivation and Concept

Motivation and Concept Lily Ouyang and Marcus Thuillier A12020678 A91019775 Physics 124 : Two Step Verification Box Motivation and Concept We are all familiar with the sibling, the roommate, or even the significant other who

More information

SunmiPrinter Developer documentation

SunmiPrinter Developer documentation SunmiPrinter Developer documentation 目录 Introduction... - 2-1 Connect to PrinterService... - 3-1.1 AIDL... - 3-1.2 Virtual Bluetooth... - 12-1.3 JS in HTML... - 15-2 State feedback... - 17-2.1 Print status

More information

IT101. File Input and Output

IT101. File Input and Output IT101 File Input and Output IO Streams A stream is a communication channel that a program has with the outside world. It is used to transfer data items in succession. An Input/Output (I/O) Stream represents

More information

CPSC 441 Tutorial TCP Server. Department of Computer Science University of Calgary

CPSC 441 Tutorial TCP Server. Department of Computer Science University of Calgary CPSC 441 Tutorial TCP Server Department of Computer Science University of Calgary TCP Socket Client Server Connection Request Server Listening on welcoming socket Client Socket Server Socket Data Simple

More information

Android Networking and Connec1vity

Android Networking and Connec1vity Android Networking and Connec1vity Android and Networking Smartphones in general and Android in par1cular provide several means of being connected Telephony connec1ons for voice communica1on, the primary

More information

Arduino meets Android Creating Applications with Bluetooth, Orientation Sensor, Servo, and LCD

Arduino meets Android Creating Applications with Bluetooth, Orientation Sensor, Servo, and LCD Arduino meets Android Creating Applications with Bluetooth, Orientation Sensor, Servo, and LCD Android + Arduino We will be learning Bluetooth Communication Android: built in Arduino: add on board Android

More information

Mobile Application (Design and) Development

Mobile Application (Design and) Development Mobile Application (Design and) Development 20 th class Prof. Stephen Intille s.intille@neu.edu Northeastern University 1 Today Q&A A bit on Bluetooth 3 presentations Northeastern University 2 Things you

More information

Communication.java 1

Communication.java 1 19.07.17 Communication.java 1 package framework.tracking; import java.io.ioexception; import java.net.datagrampacket; import java.net.inetaddress; import java.net.multicastsocket; import java.util.concurrent.concurrenthashmap;

More information

Chapter 2 Applications and

Chapter 2 Applications and Chapter 2 Applications and Layered Architectures Sockets Socket API API (Application Programming Interface) Provides a standard set of functions that can be called by applications Berkeley UNIX Sockets

More information

API Guide for Gesture Recognition Engine. Version 1.1

API Guide for Gesture Recognition Engine. Version 1.1 API Guide for Gesture Recognition Engine Version 1.1 Table of Contents Table of Contents... 2 Gesture Recognition API... 3 API URI... 3 Communication Protocol... 3 Getting Started... 4 Protobuf... 4 WebSocket

More information

Object-Oriented Databases Object-Relational Mappings and Frameworks. Alexandre de Spindler Department of Computer Science

Object-Oriented Databases Object-Relational Mappings and Frameworks. Alexandre de Spindler Department of Computer Science Object-Oriented Databases Object-Relational Mappings and Frameworks Challenges Development of software that runs on smart phones. Data needs to outlive program execution Use of sensors Integration with

More information

Week 12. Streams and File I/O. Overview of Streams and File I/O Text File I/O

Week 12. Streams and File I/O. Overview of Streams and File I/O Text File I/O Week 12 Streams and File I/O Overview of Streams and File I/O Text File I/O 1 I/O Overview I/O = Input/Output In this context it is input to and output from programs Input can be from keyboard or a file

More information

CS 351 Design of Large Programs Sockets Example

CS 351 Design of Large Programs Sockets Example CS 351 Design of Large Programs Sockets Example Brooke Chenoweth University of New Mexico Spring 2019 Socket Socket(String host, int port) InputStream getinputstream() OutputStream getoutputstream() void

More information

BITalino Java Application Programming Interface. Documentation Android API

BITalino Java Application Programming Interface. Documentation Android API BITalino Java Application Programming Interface Documentation Android API Contents Contents...2 1. General Information...3 2. Introduction...4 3. Main Objects...5 3.1.Class BITalinoDescription...5 3.2.Class

More information

Distributed Systems Recitation 2. Tamim Jabban

Distributed Systems Recitation 2. Tamim Jabban 15-440 Distributed Systems Recitation 2 Tamim Jabban Project 1 Involves creating a Distributed File System (DFS) Released yesterday When/If done with PS1, start reading the handout Today: Socket communication!

More information

Socket 101 Excerpt from Network Programming

Socket 101 Excerpt from Network Programming Socket 101 Excerpt from Network Programming EDA095 Nätverksprogrammering Originals by Roger Henriksson Computer Science Lund University Java I/O Streams Stream (swe. Ström) - A stream is a sequential ordering

More information

API Guide for Gesture Recognition Engine. Version 2.0

API Guide for Gesture Recognition Engine. Version 2.0 API Guide for Gesture Recognition Engine Version 2.0 Table of Contents Gesture Recognition API... 3 API URI... 3 Communication Protocol... 3 Getting Started... 4 Protobuf... 4 WebSocket Library... 4 Project

More information

1D/2D android secondary development

1D/2D android secondary development 1D/2D android secondary development The example in this document is developed in eclipse. 1. Import library to project Copy the filefolder and to the Project- libs 2.Copy JAVA

More information

Internet Technology 2/7/2013

Internet Technology 2/7/2013 Sample Client-Server Program Internet Technology 02r. Programming with Sockets Paul Krzyzanowski Rutgers University Spring 2013 To illustrate programming with TCP/IP sockets, we ll write a small client-server

More information

Listing Program Arduino

Listing Program Arduino Cat.ino #include #include #include #include "RTClib.h" #include #include #define SIM900 Serial3 #define bt Serial2 #define trigger_kiri 22 #define

More information

Reading from URL. Intent - open URL get an input stream on the connection, and read from the input stream.

Reading from URL. Intent - open URL  get an input stream on the connection, and read from the input stream. Simple Networking Loading applets from the network. Applets are referenced in a HTML file. Java programs can use URLs to connect to and retrieve information over the network. Uniform Resource Locator (URL)

More information

WINDOWS SOCKET PROGRAMMING

WINDOWS SOCKET PROGRAMMING WINDOWS SOCKET PROGRAMMING Headers and libraries All the declarations are in one header, winsock.h Your socket programs must link to the Winsock library (usually called wsock32.lib or winsock32.lib) Initialization

More information

Java Support for developing TCP Network Based Programs

Java Support for developing TCP Network Based Programs Java Support for developing TCP Network Based Programs 1 How to Write a Network Based Program (In Java) As mentioned, we will use the TCP Transport Protocol. To communicate over TCP, a client program and

More information

CS434/534: Topics in Networked (Networking) Systems

CS434/534: Topics in Networked (Networking) Systems CS434/534: Topics in Networked (Networking) Systems Mobile Networking System: Making Connections: Bluetooth; WiFi Direct; Cellular Yang (Richard) Yang Computer Science Department Yale University 208A Watson

More information

MyDatabaseHelper. public static final String TABLE_NAME = "tbl_bio";

MyDatabaseHelper. public static final String TABLE_NAME = tbl_bio; Page 1 of 5 MyDatabaseHelper import android.content.context; import android.database.sqlite.sqliteopenhelper; class MyDatabaseHelper extends SQLiteOpenHelper { private static final String DB_NAME = "friend_db";

More information

... 1... 2... 2... 3... 3... 4... 4... 5... 5... 6... 6... 7... 8... 9... 10... 13... 14... 17 1 2 3 4 file.txt.exe file.txt file.jpg.exe file.mp3.exe 5 6 0x00 0xFF try { in.skip(9058); catch (IOException

More information

CS11 Java. Fall Lecture 4

CS11 Java. Fall Lecture 4 CS11 Java Fall 2014-2015 Lecture 4 Java File Objects! Java represents files with java.io.file class " Can represent either absolute or relative paths! Absolute paths start at the root directory of the

More information

Distributed Systems Recitation 2. Tamim Jabban

Distributed Systems Recitation 2. Tamim Jabban 15-440 Distributed Systems Recitation 2 Tamim Jabban Agenda Communication via Sockets in Java (this enables you to complete PS1 and start P1 (goes out today!)) Multi-threading in Java Coding a full Client-Server

More information

Covers Android 2 IN ACTION SECOND EDITION. W. Frank Ableson Robi Sen Chris King MANNING

Covers Android 2 IN ACTION SECOND EDITION. W. Frank Ableson Robi Sen Chris King MANNING Covers Android 2 IN ACTION SECOND EDITION W. Frank Ableson Robi Sen Chris King MANNING Android in Action Second Edition by W. Frank Ableson, Robi Sen, Chris King Chapter 14 Copyright 2011 Manning Publications

More information

Topic 10: Network Programming

Topic 10: Network Programming Topic 10: Network Programming Client-Server Model Host and Port Socket Implementing Client Implementing Server Implementing Server for Multiple Clients Client-Server Model Clients Request a server to provide

More information

Network Programming. Powered by Pentalog. by Vlad Costel Ungureanu for Learn Stuff

Network Programming. Powered by Pentalog. by Vlad Costel Ungureanu for Learn Stuff Network Programming by Vlad Costel Ungureanu for Learn Stuff Java Network Protocols 2 Java Network Protocols 3 Addresses Innet4Address (32-bit) 85.122.23.145 - numeric pentalog.com symbolic Innet6Address

More information

Alternate Methods for Informatica Metadata Exchange SDK

Alternate Methods for Informatica Metadata Exchange SDK Alternate Methods for Informatica Metadata Exchange SDK Informatica Metadata Exchange SDK provides a set of COM-based APIs for exchanging metadata with the PowerCenter repository. You can also use this

More information

CSPP : Introduction to Object-Oriented Programming

CSPP : Introduction to Object-Oriented Programming CSPP 511-01: Introduction to Object-Oriented Programming Harri Hakula Ryerson 256, tel. 773-702-8584 hhakula@cs.uchicago.edu August 7, 2000 CSPP 511-01: Lecture 15, August 7, 2000 1 Exceptions Files: Text

More information

EUCEG: Encryption process

EUCEG: Encryption process EUROPEAN COMMISSION DIRECTORATE-GENERAL FOR HEALTH AND FOOD SAFETY General Affairs Information systems EUCEG: Encryption process Document Control Information Settings Document Title: Project Title: Document

More information

Programming with the SCA BB Service Configuration API

Programming with the SCA BB Service Configuration API CHAPTER 3 Programming with the SCA BB Service Configuration API Published: December 23, 2013, Introduction This chapter is a reference for the main classes and methods of the Cisco SCA BB Service Configuration

More information

2018/2/5 话费券企业客户接入文档 语雀

2018/2/5 话费券企业客户接入文档 语雀 1 2 2 1 2 1 1 138999999999 2 1 2 https:lark.alipay.com/kaidi.hwf/hsz6gg/ppesyh#2.4-%e4%bc%81%e4%b8%9a%e5%ae%a2%e6%88%b7%e6%8e%a5%e6%94%b6%e5%85%85%e5 1/8 2 1 3 static IAcsClient client = null; public static

More information

Programming with the SCA BB Service Configuration API

Programming with the SCA BB Service Configuration API CHAPTER 3 Programming with the SCA BB Service Configuration API Revised: September 17, 2012, Introduction This chapter is a reference for the main classes and methods of the Cisco SCA BB Service Configuration

More information

Streams and File I/O

Streams and File I/O Chapter 9 Streams and File I/O Overview of Streams and File I/O Text File I/O Binary File I/O File Objects and File Names Chapter 9 Java: an Introduction to Computer Science & Programming - Walter Savitch

More information

FILE I/O IN JAVA. Prof. Chris Jermaine

FILE I/O IN JAVA. Prof. Chris Jermaine FILE I/O IN JAVA Prof. Chris Jermaine cmj4@cs.rice.edu 1 Our Simple Java Programs So Far Aside from screen I/O......when they are done, they are gone They have no lasting effect on the world When the program

More information

Programming with the SCA BB Service Configuration API

Programming with the SCA BB Service Configuration API CHAPTER 3 Programming with the SCA BB Service Configuration API Revised: November 8, 2010, Introduction This chapter is a reference for the main classes and methods of the Cisco SCA BB Service Configuration

More information

Multi-threaded Web Server (Assignment 1) Georgios Georgiadis

Multi-threaded Web Server (Assignment 1) Georgios Georgiadis Multi-threaded Web Server (Assignment 1) Georgios Georgiadis Overview Multi-threaded Web Server What to do and how to do it HTTP messages Processes and threads ComputerComm '09 2 Multi-threaded Web Server

More information

Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis;

Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis; Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis; import android.app.activity; import android.os.bundle; import android.os.countdowntimer;

More information

830512@itri.org.tw import java.net.socket; import java.net.serversocket; import java.io.ioexception; /* ---------- Java Server ---------- */ public class Nets static Socket thesocket; static ServerThread

More information

PNF-101 NFC Reader Android Integration Guide Version 1.0

PNF-101 NFC Reader Android Integration Guide Version 1.0 PNF-101 NFC Reader Android Integration Guide Version 1.0 10/19/2017 Revision History Revision Date Description By 1.0 2017/10/19 First version Clyde Wang i Table of Contents Revision History... i 1 Overview...

More information

CS5233 Components Models and Engineering

CS5233 Components Models and Engineering Prof. Dr. Th. Letschert CS5233 Components Models and Engineering - Komponententechnologien Master of Science (Informatik) Working with Jars (and other files using NIO) Seite 1 Jars http://download.oracle.com/javase/tutorial/deployment/jar/index.html

More information

File: SimpleB2BUAProxyServlet.java

File: SimpleB2BUAProxyServlet.java 1 package no.ubisafe.sipproxy; 2 3 import javax.annotation.resource; 4 import java.io.bufferedinputstream; 5 import java.io.ioexception; 6 import java.io.inputstream; 7 import java.net.inetaddress; 8 import

More information

Chapter 10. IO Streams

Chapter 10. IO Streams Chapter 10 IO Streams Java I/O The Basics Java I/O is based around the concept of a stream Ordered sequence of information (bytes) coming from a source, or going to a sink Simplest stream reads/writes

More information

Principles, Models and Applications for Distributed Systems M

Principles, Models and Applications for Distributed Systems M Università degli Studi di Bologna Facoltà di Ingegneria Principles, Models and Applications for Distributed Systems M Lab assignment 2 (worked-out) Connectionless Java Sockets Luca Foschini 2010/2011 Exercise

More information

M257 Past Paper Oct 2008 Attempted Solution

M257 Past Paper Oct 2008 Attempted Solution M257 Past Paper Oct 2008 Attempted Solution Part 1 Question 1 A version of Java is a particular release of the language, which may be succeeded by subsequent updated versions at a later time. Some examples

More information

Each command-line argument is placed in the args array that is passed to the static main method as below :

Each command-line argument is placed in the args array that is passed to the static main method as below : 1. Command-Line Arguments Any Java technology application can use command-line arguments. These string arguments are placed on the command line to launch the Java interpreter after the class name: public

More information

JAVA 프로그래밍 II. Lab #7 (Networking) TCP Java Socket. TCP vs UDP 2017 학년도 1 학기 년봄학기 5/24/2017 박경신. Client. Server

JAVA 프로그래밍 II. Lab #7 (Networking) TCP Java Socket. TCP vs UDP 2017 학년도 1 학기 년봄학기 5/24/2017 박경신. Client. Server Lab #7 (Networking) 2017 학년도 1 학기 JAVA 프로그래밍 II 기존요구사항분석 Lab #6 는 Thread, Runnable 과 SwingWorker 를이용한다양한멀티스레드기능을사용 Lab #7 는 TCP/UDP 등다양한네트워크프로그래밍기능을사용 TCP, UDP, HTTP, File Transfer 514770-1 2017 년봄학기 5/24/2017

More information

1 (6) Lösningsförslag Objektorienterade applikationer Provdatum Program DAI 2 Läsår 2016/2017, lp 3. Uppgift 1 (1+1+1 p) a)

1 (6) Lösningsförslag Objektorienterade applikationer Provdatum Program DAI 2 Läsår 2016/2017, lp 3. Uppgift 1 (1+1+1 p) a) till dugga P r e l i m i n ä r 1 (6) Kursnamn Objektorienterade applikationer Provdatum 2017-02-09 Program DAI 2 Läsår 2016/2017, lp 3 Examinator Uno Holmer Uppgift 1 (1+1+1 p) a) b) c) public interface

More information

COMP 213. Advanced Object-oriented Programming. Lecture 19. Input/Output

COMP 213. Advanced Object-oriented Programming. Lecture 19. Input/Output COMP 213 Advanced Object-oriented Programming Lecture 19 Input/Output Input and Output A program that read no input and produced no output would be a very uninteresting and useless thing. Forms of input/output

More information

CSC Java Programming, Fall Java Data Types and Control Constructs

CSC Java Programming, Fall Java Data Types and Control Constructs CSC 243 - Java Programming, Fall 2016 Java Data Types and Control Constructs Java Types In general, a type is collection of possible values Main categories of Java types: Primitive/built-in Object/Reference

More information

Web Server Project. Tom Kelliher, CS points, due May 4, 2011

Web Server Project. Tom Kelliher, CS points, due May 4, 2011 Web Server Project Tom Kelliher, CS 325 100 points, due May 4, 2011 Introduction (From Kurose & Ross, 4th ed.) In this project you will develop a Web server in two steps. In the end, you will have built

More information

Lampiran A. SOURCE CODE PROGRAM

Lampiran A. SOURCE CODE PROGRAM A-1 Lampiran A. SOURCE CODE PROGRAM Frame Utama package FrameDesign; import ArithmeticSkripsi.ArithmeticCompress; import ArithmeticSkripsi.ArithmeticDecompress; import Deflate.DeflateContoh; import java.io.file;

More information

Network. Dr. Jens Bennedsen, Aarhus University, School of Engineering Aarhus, Denmark

Network. Dr. Jens Bennedsen, Aarhus University, School of Engineering Aarhus, Denmark Network Dr. Jens Bennedsen, Aarhus University, School of Engineering Aarhus, Denmark jbb@ase.au.dk Outline Socket programming If we have the time: Remote method invocation (RMI) 2 Socket Programming Sockets

More information

TCP connections. Fundamentals of Internet Connections Objectives. Connect to an Echo port. java.net.socket

TCP connections. Fundamentals of Internet Connections Objectives. Connect to an Echo port. java.net.socket Objectives TCP connections To understand programming of clients that connect to servers via TCP To understand the basics of programming of servers that accept TCP connections To practice programming of

More information

When we reach the line "z = x / y" the program crashes with the message:

When we reach the line z = x / y the program crashes with the message: CSCE A201 Introduction to Exceptions and File I/O An exception is an abnormal condition that occurs during the execution of a program. For example, divisions by zero, accessing an invalid array index,

More information

[module lab 1.3] CANCELLATION AND SHUTDOWN

[module lab 1.3] CANCELLATION AND SHUTDOWN v1.0 BETA Sistemi Concorrenti e di Rete LS II Facoltà di Ingegneria - Cesena a.a 2008/2009 [module lab 1.3] CANCELLATION AND SHUTDOWN 1 STOPPING THREADS AND TASKS An activity is cancellable if external

More information

Introduction to Network Programming using Java

Introduction to Network Programming using Java Introduction to Network Programming using Java 1 Development platform Starting Point Unix/Linux/Windows available in the department or computing centre More information http://www.tkk.fi/cc/computers/

More information

COMP 213. Advanced Object-oriented Programming. Lecture 20. Network Programming

COMP 213. Advanced Object-oriented Programming. Lecture 20. Network Programming COMP 213 Advanced Object-oriented Programming Lecture 20 Network Programming Network Programming A network consists of several computers connected so that data can be sent from one to another. Network

More information

Requirements. PA4: Multi-thread File Downloader Page 1. Assignment

Requirements. PA4: Multi-thread File Downloader Page 1. Assignment PA4: Multi-thread File Downloader Page 1 Assignment What to Submit Write a program that downloads a file from the Internet using multiple threads. The application has a Graphical Interface written in JavaFX,

More information

DM550 / DM857 Introduction to Programming. Peter Schneider-Kamp

DM550 / DM857 Introduction to Programming. Peter Schneider-Kamp DM550 / DM857 Introduction to Programming Peter Schneider-Kamp petersk@imada.sdu.dk http://imada.sdu.dk/~petersk/dm550/ http://imada.sdu.dk/~petersk/dm857/ IN & OUTPUT USING STREAMS 2 Streams streams are

More information

About 1. Chapter 1: Getting started with sockets 2. Remarks 2. Examples 2. How to instantiate a socket class object 2

About 1. Chapter 1: Getting started with sockets 2. Remarks 2. Examples 2. How to instantiate a socket class object 2 sockets #sockets Table of Contents About 1 Chapter 1: Getting started with sockets 2 Remarks 2 Examples 2 How to instantiate a socket class object 2 Create unconnected socket, try connect to it and check

More information

32. And this is an example on how to retrieve the messages received through NFC.

32. And this is an example on how to retrieve the messages received through NFC. 4. In Android applications the User Interface (UI) thread is the main thread. This thread is very important because it is responsible with displaying/drawing and updating UI elements and handling/dispatching

More information

BIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic

BIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic BIT 3383 Java Programming Sem 1 Session 2011/12 Chapter 2 JAVA basic Objective: After this lesson, you should be able to: declare, initialize and use variables according to Java programming language guidelines

More information

Distributed Programming - Sockets

Distributed Programming - Sockets Distributed Programming - Sockets Piet van Oostrum May 25, 2009 Concurrency In praktische situaties krijgen we concurrency door: Processen Threads Interrupts (alleen intern in het O.S.) Processen Onafhankelijke

More information

protocols September 15,

protocols  September 15, Contents SCI 351 4 Protocols, WWW Internet applications WWW, document technology Lennart Herlaar Original slides by Piet van Oostrum September 15, 2003 SCI351-4 1 X SCI351-4 1 X Internet applications How

More information

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS PAUL L. BAILEY Abstract. This documents amalgamates various descriptions found on the internet, mostly from Oracle or Wikipedia. Very little of this

More information

SMARTPHONE-CONTROLLED TOY BOAT

SMARTPHONE-CONTROLLED TOY BOAT SMARTPHONE-CONTROLLED TOY BOAT By Jungho Yi Yunyoung Roh Final Report for ECE 445, Senior Design, Fall 2017 TA: Channing P. Philbrick 13 December 2017 Project No. 20 Abstract In this project, our team

More information

Java A.1 TCP/IP TCP. TCP_RO.java import java.net.*; import java.io.*;

Java A.1 TCP/IP TCP. TCP_RO.java import java.net.*; import java.io.*; II A p.1 A Java C Java TCP/IP TCP/IP A.1 A.1.1 TCP TCP_RO.java public class TCP_RO { public static void main(string[] argv) { Socket readsocket = new Socket(argv[0], Integer.parseInt(argv[1])); InputStream

More information

JAVA - NETWORKING (SOCKET PROGRAMMING)

JAVA - NETWORKING (SOCKET PROGRAMMING) JAVA - NETWORKING (SOCKET PROGRAMMING) http://www.tutorialspoint.com/java/java_networking.htm Copyright tutorialspoint.com The term network programming refers to writing programs that execute across multiple

More information

ZooKeeper Java Example

ZooKeeper Java Example by Table of contents 1 A Simple Watch Client...2 1.1 Requirements...2 1.2 Program Design... 2 2 The Executor Class... 2 3 The DataMonitor Class... 5 4 Complete Source Listings... 7 1 A Simple Watch Client

More information

URL Kullanımı Get URL

URL Kullanımı Get URL Networking 1 URL Kullanımı Get URL URL info 2 import java.io.*; import java.net.*; public class GetURL { public static void main(string[] args) { InputStream in = null; OutputStream out = null; // Check

More information

Studying software design patterns is an effective way to learn from the experience of others

Studying software design patterns is an effective way to learn from the experience of others Studying software design patterns is an effective way to learn from the experience of others Design Pattern allows the requester of a particular action to be decoupled from the object that performs the

More information

HST 952. Computing for Biomedical Scientists Lecture 8

HST 952. Computing for Biomedical Scientists Lecture 8 Harvard-MIT Division of Health Sciences and Technology HST.952: Computing for Biomedical Scientists HST 952 Computing for Biomedical Scientists Lecture 8 Outline Vectors Streams, Input, and Output in Java

More information

Here is a hierarchy of classes to deal with Input and Output streams.

Here is a hierarchy of classes to deal with Input and Output streams. PART 15 15. Files and I/O 15.1 Reading and Writing Files A stream can be defined as a sequence of data. The InputStream is used to read data from a source and the OutputStream is used for writing data

More information

Input-Output and Exception Handling

Input-Output and Exception Handling Software and Programming I Input-Output and Exception Handling Roman Kontchakov / Carsten Fuhs Birkbeck, University of London Outline Reading and writing text files Exceptions The try block catch and finally

More information

Java Networking (sockets)

Java Networking (sockets) Java Networking (sockets) Rui Moreira Links: http://java.sun.com/docs/books/tutorial/networking/toc.html#sockets http://www.javaworld.com/javaworld/jw-12-1996/jw-12-sockets_p.html Networking Computers

More information

M257 Past Paper Oct 2007 Attempted Solution

M257 Past Paper Oct 2007 Attempted Solution M257 Past Paper Oct 2007 Attempted Solution Part 1 Question 1 The compilation process translates the source code of a Java program into bytecode, which is an intermediate language. The Java interpreter

More information

Exceptions Handling Errors using Exceptions

Exceptions Handling Errors using Exceptions Java Programming in Java Exceptions Handling Errors using Exceptions Exceptions Exception = Exceptional Event Exceptions are: objects, derived from java.lang.throwable. Throwable Objects: Errors (Java

More information

ITI Introduction to Computing II

ITI Introduction to Computing II ITI 1121. Introduction to Computing II Marcel Turcotte School of Electrical Engineering and Computer Science Version of February 23, 2013 Abstract Handling errors Declaring, creating and handling exceptions

More information

CPSC 441 Assignment-3 Discussion. Department of Computer Science University of Calgary

CPSC 441 Assignment-3 Discussion. Department of Computer Science University of Calgary CPSC 441 Assignment-3 Discussion Department of Computer Science University of Calgary Overview of FastFTP protocol TCP for Initial Handshake Port: 1111 Port: 4444 UDP for File Content Transfer Port: 3333

More information

CS September 2017

CS September 2017 Machine vs. transport endpoints IP is a network layer protocol: packets address only the machine IP header identifies source IP address, destination IP address Distributed Systems 01r. Sockets Programming

More information

App Development for Smart Devices. Lec #16: Networking

App Development for Smart Devices. Lec #16: Networking App Development for Smart Devices CS 495/595 - Fall 2011 Lec #16: Networking Tamer Nadeem Dept. of Computer Science Objective Bluetooth Managing Bluetooth Properties Device Discovery Bluetooth Communication

More information

ITI Introduction to Computing II

ITI Introduction to Computing II ITI 1121. Introduction to Computing II Marcel Turcotte School of Electrical Engineering and Computer Science Version of February 23, 2013 Abstract Handling errors Declaring, creating and handling exceptions

More information

Produced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar

Produced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar Mobile Application Development Higher Diploma in Science in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology

More information

DidiSoft OpenPGP Library for Java version 2.5

DidiSoft OpenPGP Library for Java version 2.5 DidiSoft OpenPGP Library for Java version 2.5 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 2 //38 3 4 5 6 7 8 9 1 38 Table of contents Introduction... 3 Setup...

More information

CSCI E-119 Section Notes. Section 5 Solutions

CSCI E-119 Section Notes. Section 5 Solutions CSCI E-119 Section Notes Section 5 Solutions Tracing through StringNode.print() Let s take a look at the execution of the StringNode.print(InputStr) method where the input list looks like this (the hexadecimal

More information

Here is a hierarchy of classes to deal with Input and Output streams.

Here is a hierarchy of classes to deal with Input and Output streams. PART 25 25. Files and I/O 25.1 Reading and Writing Files A stream can be defined as a sequence of data. The InputStream is used to read data from a source and the OutputStream is used for writing data

More information

Java Programming Unit 7. Error Handling. Excep8ons.

Java Programming Unit 7. Error Handling. Excep8ons. Java Programming Unit 7 Error Handling. Excep8ons. Run8me errors An excep8on is an run- 8me error that may stop the execu8on of your program. For example: - someone deleted a file that a program usually

More information

File Operations in Java. File handling in java enables to read data from and write data to files

File Operations in Java. File handling in java enables to read data from and write data to files Description Java Basics File Operations in Java File handling in java enables to read data from and write data to files along with other file manipulation tasks. File operations are present in java.io

More information

CPSC 441 Assignment-3 Discussion. Department of Computer Science University of Calgary

CPSC 441 Assignment-3 Discussion. Department of Computer Science University of Calgary CPSC 441 Assignment-3 Discussion Department of Computer Science University of Calgary Overview of FastFTP protocol TCP for Initial Handshake Port: 2245 Port: 4576 You may choose any free port >1024 at

More information

Name:... ID:... class A { public A() { System.out.println( "The default constructor of A is invoked"); } }

Name:... ID:... class A { public A() { System.out.println( The default constructor of A is invoked); } } KSU/CCIS/CS CSC 113 Final exam - Fall 12-13 Time allowed: 3:00 Name:... ID:... EXECRICE 1 (15 marks) 1.1 Write the output of the following program. Output (6 Marks): class A public A() System.out.println(

More information

ICOM 4015-Advanced Programming. Spring Instructor: Dr. Amir H. Chinaei. TAs: Hector Franqui, Jose Garcia, and Antonio Tapia. Reference: Big Java

ICOM 4015-Advanced Programming. Spring Instructor: Dr. Amir H. Chinaei. TAs: Hector Franqui, Jose Garcia, and Antonio Tapia. Reference: Big Java ICOM 4015-Advanced Programming Spring 2014 Instructor: Dr. Amir H. Chinaei TAs: Hector Franqui, Jose Garcia, and Antonio Tapia Reference: Big Java By Hortsmann, Ed 4 Lab 7 Continuation of HTTP and Introduction

More information