마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드스튜디오 로그인

0 추천
로그인을 만들려고 하는데요

등급?  로그인 시 사용자를 2명으로 나눌려고 하는데;;

혹시 안드로이드에서 구현이 가능할까해서요

한 앱에서 가능한것인지 해서요

그리고 만약에 가능하면은 검색을 어떻게 해야 할까요??

비슷한 단어로 해서 검색을 해도 안나와서요ㅠㅠ

도와주세요
뽕짝 (390 포인트) 님이 2021년 3월 31일 질문

1개의 답변

0 추천
 
채택된 답변
이건 님의 비지니스 요구사항에 따른 디자인이기 때문에 다른 것들보다는 원하는 검색결과를 찾기가 힘들 수도 있지만, 키워드를 말씀드리면 다중 로그인, 등급별 로그인 정도가 되겠네요.

구글에 검색해  multi user login 로 검색해보니 그나마 도움이 될만한 검색결과가 아래 정도네요.

https://stackoverflow.com/questions/55806009/how-to-create-multiple-users-registration-and-login-activity-in-an-android

해당 기능을 구현하실 때 만약 서버의 API를 사용해야 하는 경우라면, 이건 안드로이드 앱 뿐만아니라 서버의 작업량이 더 많아질 겁니다. 하지만 단지 안드로이드 앱에서 사용자를 나누는 것이라면, 우선은 심플한 접근방법으로는 Gradle build의 flavour를 나누거나 multi module같은 걸 써서 사용자 별로 실제 사용하는 기능을 다르게 하도록하는 겁니다. 하지만 이게 원하시는게 아니고 같은 모듈이나 flavour에서 다른 두 등급의 유저를 구분해서 작업해야 한다면, 이건 간단한 문제가 아닙니다. 등급에 따른 처리를 어떤 식으로 해야 하느냐에 따라 작은 규모의 개발자로는 불가능할 수도 있고, 간단한 로직이라면 쉽게 개발이 가능하겠지요.

결론은 님의 요구사항이 어떤 가에 따라 솔루션이 천차만별이 될 수도 있습니다.
spark (226,420 포인트) 님이 2021년 4월 1일 답변
뽕짝님이 2021년 4월 3일 채택됨
제가 구현하고 싶은 것은 bottomnavigation 에서 메뉴가 1,2,3이 있다고 가정하고 사용자가 A, B 있다고 가정한다면

사용자 A는 메뉴 1,2,3을 모두 사용 할 수 있으며
사용자 B는 메뉴 2, 3만을 사용 할 수 있게 구현 할려고 합니다


지금주신 심플한 접근 방법으로 가능한 것인지 문의드립니다
bottom navigation 에 들어가는 menu를 사용자로 별로 집어넣으시면 되지 않을까요?

 layout resource file:
 <com.google.android.material.bottomnavigation.BottomNavigationView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schema.android.com/apk/res/res-auto"
     android:id="@+id/navigation"
     android:layout_width="match_parent"
     android:layout_height="56dp"
     android:layout_gravity="start"
     app:menu="@menu/my_navigation_items" />

 res/menu/my_navigation_items.xml:
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:id="@+id/action_search"
          android:title="@string/menu_search"
          android:icon="@drawable/ic_search" />
     <item android:id="@+id/action_settings"
          android:title="@string/menu_settings"
          android:icon="@drawable/ic_add" />
     <item android:id="@+id/action_navigation"
          android:title="@string/menu_navigation"
          android:icon="@drawable/ic_action_navigation_menu" />
 </menu>
 
사용자에 따라 다은 메뉴를 지정해서 사용하시면 될 듯한데요.
inflateMenu(int resId)
이 메소드를 사용하면 동적으로 메뉴를 가져올 수 있을 것 같네요.
메뉴를 사용자에 따라 준비하신 다음 (메뉴아이템에 사용하는 메뉴 ID는 동일한 메뉴면 같은 ID를 사용)하셔서 사용자가 로그인할 때 사용자에게 맞는 메뉴룰 inflate하셔서 bottom navigation에 보여주면 될 것 같습니다.
음..아직까지는 좀 어렵네요;;

죄송하지만 한가지만 더 여쭙겠습니다

로그인 할때 사용자 A or 사용자 B 중
A를 선택하면 A에 관련된 페이지
B를 선택하면 B에관련된 페이지를 구현하고 싶습니다

이것도inflate를 통해서 할수 있는것인가해서요
inflateMenu를 할려니 문제가 발생하는 거 같아서 방법을 바꿔볼까해서 문의드립니다

혹시 구현방법이 있는지 해서요ㅜㅜ
화면이 몇 개나 되고 얼마나 복잡하느냐에 따라 달라지겠죠. 한두개 라면 액티비티나 프레그먼트를 별도록 만들거나 레이아웃을 별도로 만들어서 처리할 수 있겠지만,  앱 자체가 그렇게 동작을 해야 한다면, Grdle의 flavour나 module을 별개로 가져가는 것이 나을 수 있습니다. 어떤 앱들을 보면 보통버전, 프리미엄 버전 이런 식으로 별도로 배포하는데, 그와 같은 방식을 사용하는 것이 더 명료할 수 있습니다.
...