반응형
P2SK의 라이프
블로그 이미지
P2SKLife
앱개발에 대한 정보와 취미인 음악감상에 대한 정보를 공유합니다.

calendar

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

Notice

250x250
반응형
2021. 6. 25. 12:51 앱개발/앱 관리
728x90
반응형

앱인벤터에서 작성한 apk파일을 2021년 6월 25일 현재 aab확자자 파일과 함께 등록은 가능하지만 21년 하반기에 aab파일만 등록이 가능한 것으로 한다고 합니다. 제 생각으로는 업로드하는 파일의 용량을 줄여서 운영하는 클라우드의 용량을 줄임으로 비용을 절약하려는 전략으로 보입니다. 앱인벤터는 기본적으로 현재 apk파일로만 빌드가 되기 때문에 자체적으로는 해결을 할 수가 없고하고, kodular를 활용하면 쉽게 해결할 수 있습니다.

 

1. 앱인벤터에서 프로젝트 메뉴 중 선택된 프로젝트(.aia)를 내 컴퓨터로 내보내기하여 파일로 저장합니다.

2. kodular에서 Import Project를 클릭하여 방금 저장한 aia파일을 읽어옵니다.

3. kodular에서 Export 메뉴 중 aab를 선택하여 저장합니다.

이제 저장한 aab파일로 구글에 등록하면 됩니다.

이때 주의할 것은 앱인벤터 또는 kodular에서 "플레이어(player)" 또는 "소리(sound)" 컴포넌트를 사용한 경우 파일이 재생되지 않습니다. 반드시 kodular에 있는 exoplayer로 재생하도록 해야 정상 작동합니다.

728x90
반응형
posted by P2SKLife
728x90
반응형

구글 플레이스토어 주소 게시 URL확인
공유 컴포넌트 Sharing
블럭코딩 예제

코듈러에서 구글의 앱 주소를 SNS로 공유하는 예제입니다.

먼저 구글 플레이 스토에에서 URL을 복사하기합니다.

다음에 컴포넌트 중 Social > Sharing을 추가합니다.

블럭에서 Sharing.Share Message의 message에 방금 복사한 앱의 url을 문자열로 삽입하면 됩니다.

간단하죠?

모를땐 그냥 없어도 되는 그런 기능일 수도 있지만

카톡공유가 대세인 시대에 아주 중요한 기능입니다.

잘 활용하세요! 

728x90
반응형
posted by P2SKLife
728x90
반응형

코딩을 하다 보면 앱의 진행이 중간에 어떻게 되는지, 에러가 발생했을 때 어디서 문제가 있는지 확인을 수시로 해야합니다. 이때 변수의 값이 어떻게 변동되는지 중간 중간 확인하는 것은 정말이지 아주  중요한 핵심 사항이 아닐 수 없다고 하겠습니다. 그래서 블럭코딩을 하면서 앱의 변수 값이 어떻게 바뀌는지 확인하는 방법을 알아보겠습니다.

먼저, Test의 Companion을 활성화해야 합니다. 

처음에는 직접 핸드폰에 Companion을 설치하고

 

Companion 메뉴

Connect to companion을 클릭하면

Companion의 QR코드 창

위와 같이 QR코드 창이 떠서 핸드폰 Companion을 실행하고 위의 QR를 읽으면

핸드폰에 실시간으로 코딩한 결과가 반영이 되어 코딩작업을 했었습니다.

배틀을 테스트할 때는 실제 핸드폰 2개에 Companion을 동시에 할 수가 없어서

하나는 apk를 다운받아 설치하고

하나는 Companion으로 연결해서 테스트하다보니 정말 앱을 껐다 켰다  수없이 반복을 했었습니다.

그랬더니  너무 번거로와서 지금은 기존에 알려드린 apk에뮬레이터를 어플을 pc에 설치하여

모니터에서  코듈러 개발창과 실행창을 동시에 띄워  놓고 바로바로 확인하면서 버그를 잡고 있습니다.

 

 

 

먼저  위 게시글을 참고하여 MEMU를 설치하고 실행합니다.

멀티 뷰 설치하는 방법은 위 게시물 참고하세요.

모니터  kodular개발자 [Blocks]을 띄워놓고 Test 메뉴의 Connect to Companion을 클릭하여

QR코드 창이 뜨면

Blustacks에 Companion을 Google Play에서 설치한 후 실행하면

kodular companion

QR코드 창의  패스워드를 ******에 입력하고 >를 클릭합니다.

 

마우스 우클릭하면 뜨는 창

블럭코딩 화면에서 변수에 마우스 포인터를 갖다 대고 우클릭을 하면

Companion이  연결되어 있지 않으면  위와 같이 맨 밑의  [ Do It  ]이 비활성화되어 있습니다.

Companion이 연결된 상태에서 우클릭을 하면 

연결 후 마우스  우클릭시 뜨는 창

위와 같이 Do It이  활성화된 것을 볼 수 있습니다.

이 Do  It에 마우스를 갖다 대고 좌클릭을 하면

변수 값 확인하기

 

변수의 현재 값을 확인할 수 있습니다.

즉, Index라는 변수에 현재 값은 2라는 것을  알 수 있습니다.

이와 같이하여 변수의 변동값을 바로바로 확인하면서 코딩을 처리하실 수 있습니다.

 

그리고 변수가 아닌 블럭  자체에 마우스를 갖다대고 우클릭을 해서 메뉴창을 띄운 후 Do It을 좌클릭하면

해당 컴포넌트만 처리가 되고 그 결과가 Companion 연결된 화면에 즉시 반영됩니다.

 

이제 편리하게 버그 확인하면서 코딩에 활용하세요.

728x90
반응형
posted by P2SKLife
728x90
반응형

1일 2회 중복 체크하는 예제

코딩을 하다가 하루에 한번 만으로 횟수를 제한해야할 경우에 활용할 수 있는 예제입니다.

의외로 날짜 다루기가 만만치 않습니다.

 

위의 블럭은 날짜를 오늘 날짜를 저장하는 블럭입니다.

tag [DAteQuiz]에 처리한 오늘 날짜를 저장하는 예제입니다.

 

아래 블럭은 만약 저장한 날짜가 오늘 날짜와 동일하다면 중복에 따른 안내문을 Notifier로 잠깐 보여주는 예제입니다.

물론 중복이 아니면 그냥 지나갑니다.

 

또는 if 문에서 else를 추가하여 별도의 안내문을 보여줄 수도 있을 것입니다.

pattern은 가능하면 예제 처럼 MM/dd/yyyy로 해주시기를 권장합니다.

그냥 레이블이나 출력할 때는 이 순서를 바꾸거나 문자를 추가하여 조합할 수도 있는데

날짜데이타 처리할 때는 이 패턴으로 통일하는 것이 오류가 발생하지 않고 잘 처리됩니다.

728x90
반응형
posted by P2SKLife
728x90
반응형

날짜 형식 변경하기 예제

우리나라는 날짜를 연-월-일 순서로 읽습니다.

그런데 코듈러나 앱인벤터는 기본적으로 "월/일/연"을 사용합니다.

날짜 데이타를 처리할 때 월일연으로 처리를 해야 오류가 생기지 않습니다.

다행히 데이타를 읽어서 레이블에 출력하는 것은 순서를 변경하여 글자도 추가할 수 있습니다.

위의 예제를 보시고 따라해 보시면 됩니다.

728x90
반응형
posted by P2SKLife
728x90
반응형

날짜 차이 계산

날짜 차이를 계산하기 위해서 pattern을 MM/dd/yyyy로 저장한 값을 사용해야 오류가 발생하지 않네요.

보여주는 것은 패턴을 수정해서 보여줄 수 있지만

경과일 계산하기 위해서는 저장하는 값도 패턴을 "월/일/연(MM/dd/yyyy)"로 해야 합니다. 

결과는 숫자로 보여줍니다.

728x90
반응형
posted by P2SKLife
728x90
반응형

리스트를 활용하다가 리스트를 복사하여 원본 리스트는 놔두고 복사한 리스트로 삭제하거나 추가 등의 작업을 해야하는 경우가 발생합니다.

이때 리스트를 복사하는 방법으로

 

 새리스트명=구리스트명

 

같이 복사해도 복사는 되는데 이때 둘이 기억장소를 공유하는지 하나를 작업하면 나머지도 동일하게 변경되는 것을 확인했습니다.

그래서 

 

리스트 복사하기

리스트의 아이템을 인덱스로 하나씩 변경하면서 하나씩 옮기는 방법으로 위와같이 처리했더니 서로 영향을 주지 않네요. 리스트 활용시 주의사항 하나 또 확인했습니다.

728x90
반응형
posted by P2SKLife
728x90
반응형

코듈러로 앱을 개발하다보면 유튜브 컴포넌트로 작업을 할 경우 특히 시간을 체크해야할 경우가 있습니다.

총 시간과 재생시간에 따라서  뭔가 이벤트를 해야하는 경우입니다.

예를 들어서 총 시간의  90%를 재생한 경우 어떤 처리를 해야하는 경우의 예제를 보겠습니다.

유튜브 재생시간 90% 처리 예제

유튜브를 재생을 시작한 후에 timer로 이벤트를 시작합니다.

현재 재생시간을 체크하기 위해서 Label6에 보여줍니다.

재생시간이 0인 경우 나누기에서 에러가 발생하기 때문에 0보다 큰 경우에만 계산 처리를 합니다.

[현 재생시간(Get Current Second) / 비디오 총 시간(Get Video Duration)]에 100을 곱해서 90%를 넘으면

timer를 false로 중지합니다.

원하는 메세지를 보여줍니다.

DB에 재생한 오늘 날짜를 저장합니다.

 

728x90
반응형
posted by P2SKLife
2020. 12. 10. 19:35 앱개발/코듈러,앱인벤터
728x90
반응형

시간간격(초) 계산하기

변수 3개를 준비합니다.

Record, RecordStart, RecordEnd

RecordStart변수에는 특정 이벤트가 시작되는 블럭에 삽입하여 시간을 밀리초로 저장합니다.

해당 프로세스가 끝나는 이벤트에서 끝난 시간을 RecordEnd변수에 밀리초로 저장합니다.

Duration콤포넌트를 이용하여 시간차(밀리초)를 계산합니다.

레이블에 텍스트를 편집(1000으로 나눔)하여 출력을 합니다.

728x90
반응형
posted by P2SKLife
2020. 12. 10. 17:42 앱개발/코듈러,앱인벤터
728x90
반응형

화면 닫고 새화면 열기

앱인벤터에서 스크린이 여러개 있을 경우

한 스크린에서 다른 스크린으로 이동하는 경우

현재 화면을 닫고 새로운 스크린으로 이동해야 하는 경우가 있습니다.

이럴 경우 위와 같이 코딩하면 됩니다.

728x90
반응형
posted by P2SKLife
prev 1 2 3 4 next

728x90
반응형