전공정리/모바일컴퓨팅

[모바일 컴퓨팅] 계산기 만들기

HU_717 2023. 3. 24. 00:10

Android Studio를 통해 두가지 방법으로 계산기를 만들어봤다.

전체적인 코드를 올려놓기보다 Android Studio에 라이브러리를 추가하는 과정에서 많은 어려움을 겪어 그 과정을 설명하려고 한다. 코드는 github에 올려놓았으니 참고해도 좋을 것 같다.

1) 숫자, 부호 입력시 "식 = 결과" 형태로 출력

💡결과

✏️ 계산기 입력, 출력 형태

(1) 숫자 선택

     - 숫자 버튼을 선택하면 입력된 숫자가 계산기에 표시된다. 

(2) 부호 선택

     - 부호 버튼 선택 시, 입력 창은 빈 부분으로 변경된다.

     - ' + ', ' - ', ' / ', ' * '

(3) 숫자 선택

     - 다시 숫자 버튼 선택 시, 숫자가 입력 창에 표시된다.

(4) 부등호 선택

     -  "숫자 + 부호 + 숫자 = 결과"의 형태로 결과가 출력됨을 볼 수 있다.

(+) ERROR 표시하기

     - 만약 숫자가 입력되지 않은 상태에서 부호를 넣게 된다면 ERROR를 표시하도록한다.

(+) Clear

     - 초기화

 

✏️ 보완할 점

- 숫자가 입력되어 있는 상태에서 "="를 누르면 오류발생이라 출력해야하는데 자동으로 기본값 1로 계산된다.

- 연속해서 3개 이상 숫자는 계산 불가능하다

 

 

 

 

2) MXParser library 사용

MXParser library는 식을 입력하면 자동으로 계산해주는 패키지이다.

💡결과

💡라이브러리 추가 방법

 

참고 사이트

https://velog.io/@kimjihun1001/Android-%EC%99%B8%EB%B6%80-%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC-%EC%A0%81%EC%9A%A9-%EC%98%A4%EB%A5%98-%ED%95%B4%EA%B2%B0-%EB%B0%A9%EB%B2%95

 

[Android] 외부 라이브러리 적용 오류 해결 방법

안드로이드 어플을 만들던 중, 그래프를 그리기 위해서 "MPAndroidChart"라는 라이브러리를 사용하기로 했다. 하지만 라이브러리를 가져오는 단계에서부터 문제가 발생하게 되는데..

velog.io

 

✏️ 원하는 라이브러리 설치 (나는 mXparser을 설치했다)

https://mathparser.org/mxparser-downloads/

 

Downloads | mXparser – Math Expressions Parser for JAVA Android C# Kotlin .NET/MONO/Xamarin – Mathematical Formula Parser /

MathParser.org-mXparser has been downloaded more than 2.000.000 times! TO SUPPORT MY WORK, ORDER A COMMERCIAL LICENSE THANK YOU! Install-Package MathParser.org-mXparser -Version 5.2.1 Nuget – .NET CLI dotnet add package MathParser.org-mXparser --version

mathparser.org

java에서 사용할 것이기 때문에 [ Download latest release - v.5.2.1 Orion:JAVA bin only ]를 설치한다.

이때 버전을 잘 기억해야한다.

 

✏️ java 버전 확인

java --version

 

✏️ 다운 받은 라이브러리 Android Studio에 넣기

Android Studio에 app\libs 부분에 다운받은 라이브러리를 추가해준다.

여기서 libs가 없다면 폴더로 생성해준다.

다운받은 라이브러리의 마우스 오른쪽을 클릭한후 [Add As Library]를 동작시킨다.

 

동기화를 위해 오른쪽 상단에 있는 

부분을 클릭해준다.

 

 

✏️ build.gradle수정

Ctrl + Shift + F 로 implementation을 검색하면 쉽게 찾을 수 있다.

dependencies부분에 "implementation 'org.mariuszgromada.math:MathParser.org-mXparser:5.2.1' "의 부분을 추가해준다.

여기서 mXparser가 본인에 맞는 버전으로 다운 받아야한다.

 

이때, 주석 처리한 부분은 모두 삭제해줘야한다.

동작되지 않아 mXparser을 계속 지우고 깔았더니 지속해서 저 부분이 생겨났고 필요 없는 부분이다.

 

 

💙마무리

라이브러리를 처음 추가하는 거라 처음부터 끝까지 다 막혔고 오랜 시간이 걸렸다.

검색해도 자료가 많이 나오지 않았으며 각기 다른 라이브러리 추가 방식이라 헷갈리는 부분도 많았다.

이제 이러한 게 또 생기면 해결 가능 할 것이다.