SlideShare a Scribd company logo
1
2018 Mid-term Examination (100)
Architecting Smart Devices
Date: 2018-10-23
1. 여러 업체들이 경쟁적으로 출시하고 있는 smart speaker의 유용성(장점)을 3가지 이
상 서술하시오. (15)
- UI(User Interface)가 voice UI이므로 특별한 사용법 공부 필요없이 대화하듯이 speaker
에게 지시할 수 있다.
- Smart speaker는 기본적으로 speaker이므로 여러 종류의 음성 생성이 가능하다.
- 음성 인식을 위해 사용하는 AI는 다른 장치 제어 용도로 변경되어 사용할 수 있다.
- Smart speaker는 smart home hub로 작동해 가정에 있는 다양한 전자기기를 지능적으
로 제어할 수 있다.
- Smart speaker는 개인 비서로 작동할 수 있다.
2. 다음 code의 문제점을 UI thread 관점으로 서술하시오. 이 문제를 해결하기 위한 대
안을 제시하오. (20)
public class MainActivity … {
public TextView tvMsg;
public Button btText;
protected MyView myView;
protected void onCreate(…) { …
myView = new MyView(this); }
}
public class MyView … {
protected MainActivity activity;
MyView(MainActivity activity)
{ this.activity = activity;}
public setMsg(String str) {
activity.tvMsg.setText(str); }
}
- 문제점: MainActivity는 UI thread가 구동하므로 MainActivity 내부에 정의한 widget을
다른 class가 외부에서 접근하면 안된다. 위 code는 MyView setMsg() 함수를 이용해
MainActivity widget인 tvMsg를 접근하므로 심각한 문제가 발생한다.
- 해결책
1) MainActivity widget 제어가 필요하면 MainActivity 안에서만 변경한다.
2) 혹은 MyView에서 broadcast를 보내고 MainActivity가 BroadcastReceiver로 받아서 내
부 widget을 변경하게 한다.
2
3) 변경하고 싶은 widget에 있는 post() 함수를 이용해 MainActivity로 Runnable을 보낸
다.
3. 아래 평균과 원 면적을 구하는 Java code를 가독성, 협업, 유지 보수 등을 고려하여
수정한 새로운 code를 제시하라. 4곳 이상에 수정을 가해야 함. (20)
class c {
public int a;
public double x, xx;
double fun(int b, double w) {
this.a = b; double x = 0;
for (int n = 0; n < this.a; n++)
x += (w + n);
this.x = x/this.a; return this.x;
}
double fun2(double z) {
this.xx = 3.14*z*z; return this.xx;
}
}
…
c cc;
double x = cc.fun(100, 1.1);
System.out.print(x);
System.out.print(cc.fun2(5.));
class LibMath {
public int nMaxElement;
public double average, circleArea;
double getAverage(int maxElement, double constElement) {
this.nMaxElement = maxElement;
double sum = 0;
for (int nIndex = 0; nIndex < this. nMaxElement; nIndex++)
sum += (constElement + nIndex);
this.averge = sum/this.nMaxElement;
return this.average;
}
double getCircleArea(double radius) {
this.circleArea = Math.PI*radius*radius;
return this.circleArea;
}
}
3
…
LibMath libMath;
int nMaxElement = 100;
double constElement = 1.1;
double radius = 5.;
double average = libMath.getAverage(nMaxElement, constElement);
double circleArea = libMath.getCircleArea(radius);
System.out.print(average);
System.out.print(circleArea);
4. 특정 Button을 누르면 아래 기능을 실행하는 Android code를 함수로 제시하라. Code
는 최대한 짧게. Code에 사용하는 EditText, TextView, Button은 이미 잘 초기화됨. (45)
- 함수 정의: 입력, 출력, 함수명 반드시 표시 – 예) double fun(double x) { … }
- 함수 실행 예 작성 – 예) double ans = fun(1.2);
1) EditText에 “sms”를 입력하면 042-829-7670으로 문자를 보낼 준비를 하고, “call”을 입
력하면 직접 전화를 거는 기능(15)
protected void textOrCall(String sOp, String sTelNum) {
if (sOp == “sms”) {
Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.parse(“smsto:” + sTelNum));
startActivity(intent);
}
else if (sOp == “call”) {
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(“tel:” + sTelNum));
startActivity(intent);
}
}
…
EditText etOp;
String sTelNum = “0428297670”;
String sOp = etOp.getText().toString();
textOrCall(sOp, sTelNum);
4
2) Android 음성 인식 기능을 이용하여 음성을 인식한 후 TextView에 표시하는 기능(15)
static final int CODE_RECOG = 1021;
TextView tvRecog;
…
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CODE_RECOG) {
if (resultCode == Activity.RESULT_OK && data != null) {
ArrayList<String> arList;
arList = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
String sRecog = arList.get(0);
tvRecog.setText(sRecog);
}
}
}
protected void voiceRecog() {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.KOREAN);
startActivityForResult(intent, CODE_RECOG);
}
…
voiceRecog();
3) EditText에 입력한 URL로 이동하여 web page를 보여주는 기능(15)
protected void showWebpage(String sUrl) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(sUrl));
5
startActivity(intent);
}
…
EditText etUrl;
String sUrl = etUrl.getText().toString();
showWebpage(sUrl);

More Related Content

Similar to TestSDS2018-1(answer)

7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성
HyeonSeok Choi
 
C++ 11 에 대해서 쉽게 알아봅시다 1부
C++ 11 에 대해서 쉽게 알아봅시다 1부C++ 11 에 대해서 쉽게 알아봅시다 1부
C++ 11 에 대해서 쉽게 알아봅시다 1부
Gwangwhi Mah
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심흥배 최
 
Boost라이브러리의내부구조 20151111 서진택
Boost라이브러리의내부구조 20151111 서진택Boost라이브러리의내부구조 20151111 서진택
Boost라이브러리의내부구조 20151111 서진택
JinTaek Seo
 
HI-ARC PS 101
HI-ARC PS 101HI-ARC PS 101
HI-ARC PS 101
Jae-yeol Lee
 
3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택
JinTaek Seo
 
안드로이드 개발자를 위한 스위프트
안드로이드 개발자를 위한 스위프트안드로이드 개발자를 위한 스위프트
안드로이드 개발자를 위한 스위프트
병한 유
 
프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기
Jongwook Choi
 
C++17 Key Features Summary - Ver 2
C++17 Key Features Summary - Ver 2C++17 Key Features Summary - Ver 2
C++17 Key Features Summary - Ver 2
Chris Ohk
 
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
Taeyoung Kim
 
Boost 라이브리와 C++11
Boost 라이브리와 C++11Boost 라이브리와 C++11
Boost 라이브리와 C++11OnGameServer
 
NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스
Sungik Kim
 
Design patterns
Design patternsDesign patterns
Design patternsdf
 
Designing Apps for Motorla Xoom Tablet
Designing Apps for Motorla Xoom TabletDesigning Apps for Motorla Xoom Tablet
Designing Apps for Motorla Xoom Tablet
Motorola Mobility - MOTODEV
 
Meteor IoT
Meteor IoTMeteor IoT
Meteor IoT
Jaeho Lee
 
20201121 코드 삼분지계
20201121 코드 삼분지계20201121 코드 삼분지계
20201121 코드 삼분지계
Chiwon Song
 
5장 객체와클래스
5장 객체와클래스5장 객체와클래스
5장 객체와클래스
SeoYeong
 
함수적 사고 2장
함수적 사고 2장함수적 사고 2장
함수적 사고 2장
HyeonSeok Choi
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01
SangYun Yi
 
20140219 techdays mini 앱 개발 세미나(4)
20140219 techdays mini  앱 개발 세미나(4) 20140219 techdays mini  앱 개발 세미나(4)
20140219 techdays mini 앱 개발 세미나(4) 영욱 김
 

Similar to TestSDS2018-1(answer) (20)

7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성
 
C++ 11 에 대해서 쉽게 알아봅시다 1부
C++ 11 에 대해서 쉽게 알아봅시다 1부C++ 11 에 대해서 쉽게 알아봅시다 1부
C++ 11 에 대해서 쉽게 알아봅시다 1부
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심
 
Boost라이브러리의내부구조 20151111 서진택
Boost라이브러리의내부구조 20151111 서진택Boost라이브러리의내부구조 20151111 서진택
Boost라이브러리의내부구조 20151111 서진택
 
HI-ARC PS 101
HI-ARC PS 101HI-ARC PS 101
HI-ARC PS 101
 
3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택
 
안드로이드 개발자를 위한 스위프트
안드로이드 개발자를 위한 스위프트안드로이드 개발자를 위한 스위프트
안드로이드 개발자를 위한 스위프트
 
프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기프로그래밍 대회: C++11 이야기
프로그래밍 대회: C++11 이야기
 
C++17 Key Features Summary - Ver 2
C++17 Key Features Summary - Ver 2C++17 Key Features Summary - Ver 2
C++17 Key Features Summary - Ver 2
 
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
//BUILD/ Seoul - .NET의 현재와 미래. 그 새로운 시작
 
Boost 라이브리와 C++11
Boost 라이브리와 C++11Boost 라이브리와 C++11
Boost 라이브리와 C++11
 
NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Designing Apps for Motorla Xoom Tablet
Designing Apps for Motorla Xoom TabletDesigning Apps for Motorla Xoom Tablet
Designing Apps for Motorla Xoom Tablet
 
Meteor IoT
Meteor IoTMeteor IoT
Meteor IoT
 
20201121 코드 삼분지계
20201121 코드 삼분지계20201121 코드 삼분지계
20201121 코드 삼분지계
 
5장 객체와클래스
5장 객체와클래스5장 객체와클래스
5장 객체와클래스
 
함수적 사고 2장
함수적 사고 2장함수적 사고 2장
함수적 사고 2장
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01
 
20140219 techdays mini 앱 개발 세미나(4)
20140219 techdays mini  앱 개발 세미나(4) 20140219 techdays mini  앱 개발 세미나(4)
20140219 techdays mini 앱 개발 세미나(4)
 

More from Yong Heui Cho

Android - Sensor Manager
Android - Sensor ManagerAndroid - Sensor Manager
Android - Sensor Manager
Yong Heui Cho
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast Receiver
Yong Heui Cho
 
Android - Message
Android - MessageAndroid - Message
Android - Message
Yong Heui Cho
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
Yong Heui Cho
 
Computing Paradigm
Computing ParadigmComputing Paradigm
Computing Paradigm
Yong Heui Cho
 
TestBCD2018-2(answer)
TestBCD2018-2(answer)TestBCD2018-2(answer)
TestBCD2018-2(answer)
Yong Heui Cho
 
TestSDS2018-2(answer)
TestSDS2018-2(answer)TestSDS2018-2(answer)
TestSDS2018-2(answer)
Yong Heui Cho
 
TestEC2018-2(answer)
TestEC2018-2(answer)TestEC2018-2(answer)
TestEC2018-2(answer)
Yong Heui Cho
 
TestEC2018-1(answer)
TestEC2018-1(answer)TestEC2018-1(answer)
TestEC2018-1(answer)
Yong Heui Cho
 
TestBCD2018-1(answer)
TestBCD2018-1(answer)TestBCD2018-1(answer)
TestBCD2018-1(answer)
Yong Heui Cho
 
BJT - Analysis of Bias
BJT - Analysis of BiasBJT - Analysis of Bias
BJT - Analysis of Bias
Yong Heui Cho
 
TestCloud2018-2(answer)
TestCloud2018-2(answer)TestCloud2018-2(answer)
TestCloud2018-2(answer)
Yong Heui Cho
 
TestECD2018-1(answer)
TestECD2018-1(answer)TestECD2018-1(answer)
TestECD2018-1(answer)
Yong Heui Cho
 
Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)
Yong Heui Cho
 
TestCloud2018-1(answer)
TestCloud2018-1(answer)TestCloud2018-1(answer)
TestCloud2018-1(answer)
Yong Heui Cho
 
Cloud Service Model
Cloud Service ModelCloud Service Model
Cloud Service Model
Yong Heui Cho
 
Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)
Yong Heui Cho
 
RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1
Yong Heui Cho
 
Computing Paradigm - rev1
Computing Paradigm - rev1Computing Paradigm - rev1
Computing Paradigm - rev1
Yong Heui Cho
 
Cloud Deployment Model
Cloud Deployment ModelCloud Deployment Model
Cloud Deployment Model
Yong Heui Cho
 

More from Yong Heui Cho (20)

Android - Sensor Manager
Android - Sensor ManagerAndroid - Sensor Manager
Android - Sensor Manager
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast Receiver
 
Android - Message
Android - MessageAndroid - Message
Android - Message
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Computing Paradigm
Computing ParadigmComputing Paradigm
Computing Paradigm
 
TestBCD2018-2(answer)
TestBCD2018-2(answer)TestBCD2018-2(answer)
TestBCD2018-2(answer)
 
TestSDS2018-2(answer)
TestSDS2018-2(answer)TestSDS2018-2(answer)
TestSDS2018-2(answer)
 
TestEC2018-2(answer)
TestEC2018-2(answer)TestEC2018-2(answer)
TestEC2018-2(answer)
 
TestEC2018-1(answer)
TestEC2018-1(answer)TestEC2018-1(answer)
TestEC2018-1(answer)
 
TestBCD2018-1(answer)
TestBCD2018-1(answer)TestBCD2018-1(answer)
TestBCD2018-1(answer)
 
BJT - Analysis of Bias
BJT - Analysis of BiasBJT - Analysis of Bias
BJT - Analysis of Bias
 
TestCloud2018-2(answer)
TestCloud2018-2(answer)TestCloud2018-2(answer)
TestCloud2018-2(answer)
 
TestECD2018-1(answer)
TestECD2018-1(answer)TestECD2018-1(answer)
TestECD2018-1(answer)
 
Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)
 
TestCloud2018-1(answer)
TestCloud2018-1(answer)TestCloud2018-1(answer)
TestCloud2018-1(answer)
 
Cloud Service Model
Cloud Service ModelCloud Service Model
Cloud Service Model
 
Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)
 
RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1
 
Computing Paradigm - rev1
Computing Paradigm - rev1Computing Paradigm - rev1
Computing Paradigm - rev1
 
Cloud Deployment Model
Cloud Deployment ModelCloud Deployment Model
Cloud Deployment Model
 

TestSDS2018-1(answer)

  • 1. 1 2018 Mid-term Examination (100) Architecting Smart Devices Date: 2018-10-23 1. 여러 업체들이 경쟁적으로 출시하고 있는 smart speaker의 유용성(장점)을 3가지 이 상 서술하시오. (15) - UI(User Interface)가 voice UI이므로 특별한 사용법 공부 필요없이 대화하듯이 speaker 에게 지시할 수 있다. - Smart speaker는 기본적으로 speaker이므로 여러 종류의 음성 생성이 가능하다. - 음성 인식을 위해 사용하는 AI는 다른 장치 제어 용도로 변경되어 사용할 수 있다. - Smart speaker는 smart home hub로 작동해 가정에 있는 다양한 전자기기를 지능적으 로 제어할 수 있다. - Smart speaker는 개인 비서로 작동할 수 있다. 2. 다음 code의 문제점을 UI thread 관점으로 서술하시오. 이 문제를 해결하기 위한 대 안을 제시하오. (20) public class MainActivity … { public TextView tvMsg; public Button btText; protected MyView myView; protected void onCreate(…) { … myView = new MyView(this); } } public class MyView … { protected MainActivity activity; MyView(MainActivity activity) { this.activity = activity;} public setMsg(String str) { activity.tvMsg.setText(str); } } - 문제점: MainActivity는 UI thread가 구동하므로 MainActivity 내부에 정의한 widget을 다른 class가 외부에서 접근하면 안된다. 위 code는 MyView setMsg() 함수를 이용해 MainActivity widget인 tvMsg를 접근하므로 심각한 문제가 발생한다. - 해결책 1) MainActivity widget 제어가 필요하면 MainActivity 안에서만 변경한다. 2) 혹은 MyView에서 broadcast를 보내고 MainActivity가 BroadcastReceiver로 받아서 내 부 widget을 변경하게 한다.
  • 2. 2 3) 변경하고 싶은 widget에 있는 post() 함수를 이용해 MainActivity로 Runnable을 보낸 다. 3. 아래 평균과 원 면적을 구하는 Java code를 가독성, 협업, 유지 보수 등을 고려하여 수정한 새로운 code를 제시하라. 4곳 이상에 수정을 가해야 함. (20) class c { public int a; public double x, xx; double fun(int b, double w) { this.a = b; double x = 0; for (int n = 0; n < this.a; n++) x += (w + n); this.x = x/this.a; return this.x; } double fun2(double z) { this.xx = 3.14*z*z; return this.xx; } } … c cc; double x = cc.fun(100, 1.1); System.out.print(x); System.out.print(cc.fun2(5.)); class LibMath { public int nMaxElement; public double average, circleArea; double getAverage(int maxElement, double constElement) { this.nMaxElement = maxElement; double sum = 0; for (int nIndex = 0; nIndex < this. nMaxElement; nIndex++) sum += (constElement + nIndex); this.averge = sum/this.nMaxElement; return this.average; } double getCircleArea(double radius) { this.circleArea = Math.PI*radius*radius; return this.circleArea; } }
  • 3. 3 … LibMath libMath; int nMaxElement = 100; double constElement = 1.1; double radius = 5.; double average = libMath.getAverage(nMaxElement, constElement); double circleArea = libMath.getCircleArea(radius); System.out.print(average); System.out.print(circleArea); 4. 특정 Button을 누르면 아래 기능을 실행하는 Android code를 함수로 제시하라. Code 는 최대한 짧게. Code에 사용하는 EditText, TextView, Button은 이미 잘 초기화됨. (45) - 함수 정의: 입력, 출력, 함수명 반드시 표시 – 예) double fun(double x) { … } - 함수 실행 예 작성 – 예) double ans = fun(1.2); 1) EditText에 “sms”를 입력하면 042-829-7670으로 문자를 보낼 준비를 하고, “call”을 입 력하면 직접 전화를 거는 기능(15) protected void textOrCall(String sOp, String sTelNum) { if (sOp == “sms”) { Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.parse(“smsto:” + sTelNum)); startActivity(intent); } else if (sOp == “call”) { Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(“tel:” + sTelNum)); startActivity(intent); } } … EditText etOp; String sTelNum = “0428297670”; String sOp = etOp.getText().toString(); textOrCall(sOp, sTelNum);
  • 4. 4 2) Android 음성 인식 기능을 이용하여 음성을 인식한 후 TextView에 표시하는 기능(15) static final int CODE_RECOG = 1021; TextView tvRecog; … @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == CODE_RECOG) { if (resultCode == Activity.RESULT_OK && data != null) { ArrayList<String> arList; arList = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); String sRecog = arList.get(0); tvRecog.setText(sRecog); } } } protected void voiceRecog() { Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.KOREAN); startActivityForResult(intent, CODE_RECOG); } … voiceRecog(); 3) EditText에 입력한 URL로 이동하여 web page를 보여주는 기능(15) protected void showWebpage(String sUrl) { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(sUrl));
  • 5. 5 startActivity(intent); } … EditText etUrl; String sUrl = etUrl.getText().toString(); showWebpage(sUrl);