안녕하세요 여러분!!
2번의 앱을 만들고 실패 후 다른 종류의 앱을 만들기로 했어요!!
저는 약간의 일도 하면서 개발을 하고 있어요. 저는 나중에 AI 병합 IOT쪽으로 사업을 할 계획이기 때문에
SW, HW, FirmW 등등 많은 공부들을 하면서 약간의 일을 하고 있어요!
그러면서 현대에 가장 발달된 IoT제품으로 스마트폰!! 이 대표적이기 때문에 앞으로 이 스마트기기를 이용한 생활이 커질것을 염두해 안드로이드 플랫폼에서 서비스 가능한 앱연구도 하고 있답니다.
서론이 길었고.
오늘은 혼자 안드로이드 어플,앱 제작 (개인 개발자) 1일차 [Splash 처음화면 로딩화면]에 대해 이야기 해볼께요!
이번에 만들 앱은 간단한 정보제공 앱이에요. 뭐.. 학교 급식표 알려주는것 마냥 간단한 필수 정보 제공 앱이죠 ㅎㅎ..
오늘 제작한 것에 대한 내용을 적어볼게요!
모든 앱 제작과 마찬가지로 화면(Activity) 틀을 만들었어요~
첫화면
두번째
세번째
일단은 대충 이정도로 만들었는데 제작중 차후 더 필요한 기능이 있다면 점점 추가 되겠죠 ~?
코드 부분이에요!
import android.app.Application;
public class FlagClass extends Application {
private static int where;
private static int kind;
private static int what;
@Override
public void onCreate() {
super.onCreate();
where = 0;
kind = 0;
what = 0;
}
@Override
public void onTerminate() {super.onTerminate();}
public void Init() {
where = 0;
kind = 0;
what = 0;
}
public void setWhere(int flag){this.where = flag;}
public void setKind(int flag) {this.kind = flag;}
public void setWhat(int flag) {this.what = flag;}
public int getWhere() {return where;}
public int getKind() {return kind;}
public int getWhat() {return what;}
}
위 코드는 일단 앱 제작중 거의 필수적인 AppContext 기능을 담당할 Flag 클래스에요.
그 이유는 이전 액티비티에서 사용한 변수의 상태를 다른 액티비티에서도 필요할 때가 있기 때문에
대부분 이런 Flag기능을 하거나 App자체에 정보를 저장하는 클래스는 필수랍니다~
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent_splash = new Intent(this, SplashActivity.class);
Intent intent_whatkindfood = new Intent(this, WhatKindFood.class);
startActivity(intent_splash);
}
}
위 코드는 맨 처음 부분인데, 저기 intent_splash 부분은 시작로딩화면 부분이에요.
대부분 앱을 켜면 먼저 앱이름과 함께 꽉찬화면이 나오죠? 그 부분이랍니다.
그걸 사람들은 Splash라고 부르더라구요.
아래 코드는 SplashActivity 클래스의 코드에요~
public class SplashActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
startLoading();
}
private void startLoading() {
Handler hendler = new Handler();
hendler.postDelayed(new Runnable() {
@Override
public void run() {
finish();
}
}, 2000);
}
}
간단하죠? 물론 처음 하는분들은 어려울 수도 있죠~
나머지는 아직 기능적 구현은 안했기 때문에,
Intent intent_twofood = new Intent(this, 녀녀녀녀.class);
이렇게 위 코드처럼 Intent 까지만 구현 해놨답니다.
저같은 개인개발자는 보통 간단하지만
필수적인 정보 제공용 앱이나,
제작, 설계등 도구 기능할 할 수 있는앱,
카메라 관련 앱,
이런 것들로 서비스를 제공하고 광고 수익이나,
유료 혹은 유료기능으로 수입을 내더라구요.
그리고 디자인이 엄~~~청 중요해요.
제가 지금까지 만든 앱 2개는 너무 많은 사람들이 이용해야만 가능한 앱이여서 혼자
부담하기 힘들다고 판단했죠. 디자인도 개구리구요 .ㅋㅋ 그래서 빠르게 접었어요.
물론 아직 다운 받을 수 도 있고 작동도 한답니다 ㅋㅋ
그래서 실패 원인을 찾던중 앱 종류에 따라 사람들이
대하는 태도가 다르다는 점과,
기업용, 개인용, 소규모용 앱이 있다는 것을 연구했죠~
그래서 다시 시도하고 있어요!
오늘은 앱에 대해 이것저것 연구도 하고 어떤 식의 앱을 만들까에 대한 시간을 많이 썻어요. 물론 좀 놀면서 ㅎㅎ..
저렇게까지 만드는데 약 2시간 걸렸네요. 왜냐하면 저도 아직 초보라 액티비티 디자인 하는데 시간도 걸리고 하네요.
앱 구조적인 것만 알고 막 즉각정으로 사용하진 못해요.
누구나 다 앱을 만들고 자신만의 서비스를 제공 할수 있답니다.
오늘은 혼자 안드로이드 어플,앱 제작 (개인 개발자) 1일차 [Splash 처음화면 로딩화면]에 대한 글을 여기서 마칠게요~
혹시 궁금한거 있으면 댓글 달아요!
안녕!
'공감 하트 감사용~
'IT기술(코딩)' 카테고리의 다른 글
라즈베리파이 서버 구축 mysql 로그인 오류 해결 (0) | 2020.08.02 |
---|---|
라즈베리파이 서버 구축 mysql 편 (0) | 2020.08.02 |
앱(어플) 업데이트 알림 쉽게 만들기 (서버연동으로 쉽게 만들자) (0) | 2020.08.02 |
안드로이드 스튜디오 앱등록 사기행위 대처방법(Google Play 정책을 준수하지 않음) 사기행위로 인한 등록 취소 (0) | 2020.08.02 |
안드로이드 스튜디오 서버연동 Runnable사용 (HttpURLConnection 함수) 예제 (0) | 2020.08.02 |