#4 – Reset password in Firebase Authentication in Android using Android Studio – Kotlin

얘들 아 CodeAndroid의 Vignesh 이 비디오에서는 "Firebase에서 잊어 버린 비밀번호를 재설정하는 방법" 이전 자습서에서는 사용자 생성 방법 자격증 명으로 로그인 암호 변경 이제 보게 될 것이다 이전 암호를 몰라도 암호를 다시 설정하는 방법 사용자가 자신의 암호를 모른다면 그럼 그는 로그인 할 수 없다

이때 비밀번호를 재설정하려고합니다 로그인 버튼 아래에 암호 분실 버튼 추가하기 버튼의 텍스트를 "비밀번호 분실"로 설정 나는 모든 텍스트를 대문자로하고 싶지 않다 그래서 textAllCaps를 false로 설정하십시오 우리는 화면의 전체 너비에 걸쳐 버튼 적용 범위를 원하지 않습니다 그래서 너비를 "wrap_content" 또한, 우리는 화면의 오른쪽에있는 버튼을 원한다

따라서 layout_gravity를 끝으로 설정하십시오 마지막으로 코드를 재정렬하고 ID를 다음과 같이 설정합니다 "btn_forgot_password" 또한 16dp로 martingTop을 추가하십시오 이 버튼을 클릭하면 대화 상자를 표시하고 싶습니다 그것을 사용하여 사용자의 이메일 주소를 얻고 재설정 된 비밀번호 메일을 보냅니다

단추에 대한 청취자를 클릭하도록 설정 이 대화 상자에는 레이아웃 파일이 필요합니다 따라서 "dialog_forgot_password"라는 새로운 레이아웃 파일을 만드는 것입니다 레이아웃 파일에는 하나의 EditText 만 있습니다 EditText로 루트 요소를 변경했습니다 중간에있는 EditText에서는보기를 원하지 않습니다

그래서 같은 줄에서 끝내기 높이를 "wrap_content"로 변경하고 id를 "et_username"으로 지정합니다 여백 시작 및 종료를 16dp로 추가 이제이 레이아웃 파일이 대화 상자로 표시됩니다 AlertDialogBuilder 객체를 생성하려면 빌더라는 값에 저장 대화 상자의 제목을 "비밀번호 찾기"로 설정하십시오

레이아웃 layoutInflater를 사용하여 레이아웃 파일 팽창시키기 보기라는 값에 저장 그런 다음 setView 메소드를 사용하여 대화 상자보기로보기를 설정합니다 대화 상자에는 두 개의 버튼이 필요합니다 양수 버튼과 음수 버튼 따라서 빌더에 대해 긍정적 인 버튼을 설정하고 텍스트를 '재설정'으로 전달하십시오 네거티브 버튼에 복사하여 텍스트를 닫기로 변경 양수 버튼을 클릭하면 EditText에서 값을 읽어야합니다 따라서 뷰 객체에서 findViewById를 호출하여 EditText의 객체를 생성합니다

여기 전자 메일 주소의 유효성을 검사해야합니다 그래서 forgotPassword라는 함수를 생성합니다 해당 메소드가 EditText를 매개 변수로 전달하는 경우 메소드 내에서 유효성 검사를 할 수 있도록 전자 메일 유효성 검사를 복사하고 여기에 붙여 넣습니다 우리는 검증을 위해 "username"을 사용할 필요가있다 오류의 경우 오류를 표시 할 필요가 없습니다

그래서 나는 그것들을 제거하고있다 사용자 이름이 유효하면 재설정 된 비밀번호 메일을 보내야합니다 Firebase 인증에서 "비밀번호 재설정 메일 보내기"부분을 볼 수 있습니다 그래서이 코드를 복사하여 여기에 붙여 넣습니다 emailAddress의 경우 이메일 주소를 전달해야합니다

사용자 이름에 입력 된 EditText 작업이 성공하면 "이메일 전송 됨"으로 표시됩니다 마지막으로 빌더 객체에서 show 메소드 호출 대화 상자가 사용자에게 표시됩니다 이제 응용 프로그램을 시작합니다 응용 프로그램의 DashboardActivity로 이동하는 것을 볼 수 있습니다 tho LoginActivity (으)로 이동하려면 응용 프로그램을 제거하고 다시 시작합니다

잊어 버린 암호 버튼을 볼 수 있습니다 버튼을 클릭하면 대화 상자가 나타납니다 이메일 주소를 알려 드리겠습니다 '재설정'버튼을 클릭하면 축배가 '이메일 전송 됨'으로 표시됩니다 이메일을 열어 보겠습니다

"비밀번호 재설정"에 대한 메일을 볼 수 있습니다 메일을 열고 비밀번호 재설정 링크를 클릭하십시오 내 새 암호를 "123456" 이제 자격 증명으로 로그인하려고합니다 우리가 우리의 어플리케이션에 로그인하는 것을 볼 수 있습니다 이렇게하면 사용자 비밀번호를 잊어 버렸을 때 재설정 할 수 있습니다

이 비디오 녀석을위한 전부입니다 이 비디오가 마음에 드시면 엄지 손가락을주세요 나를 후원하고 싶다면에서 후원자가되어 그렇게 할 수 있습니다 wwwpatreon

com/CodeAndroid 너가 좋아하길 바래 내 다음 비디오에서 뵙겠습니다 좋은 하루 되세요

Multiple Items in Listview (RecyclerView) in Android Studio – Part 5

안녕 모두, 내 이름은 Oum Saokosal입니다 우리는 안드로이드 RecyclerView에서 우리의 교훈을 계속할 것입니다

우리는 안드로이드 RecyclerView MySQL 데이터베이스에 연결에 대해 얘기하고 우리는 Volley와 PHP를 거친 다음 PHP가 MySQL에 연결하고 이전 비디오, 우리는 Volley와 Part 1, Part 2, Part 3, 우리는 RecyclerView에 대해 이야기했습니다 자, 이제부터 PHP에서 데이터를 얻는 방법에 대해 계속하겠습니다 사실, 우리는 PHP와 MySQL의 코드에 대해 조금 이야기했습니다 이것은 내 YouTube 채널, Facebook, Twitter 및 github입니다 좋아요, 그래서 이것은 우리가 이야기 할 부분입니다

그리고 이것은, 당신도 마찬가지입니다 웹 서버로 이동하여 데이터베이스 루프백에 연결하고 다시 보내면 우리는 Volley에 대해 이야기합니다 이미 알았습니다이 동영상에서 StringRequest에 대해 이야기하겠습니다 좋아, 그리고 마지막으로 할 일은 JSON 텍스트를 ArrayList로 변환하는 것이다

자, 안드로이드로 돌아가 보자 우리는 MySingleton을 가지고 있습니다 좋아요이 클래스는 요청보기를 여기에서 얻을 수있는 클래스입니다 전장에서 지휘관 한 명만 갖고 싶기 때문에

우리는 많은 지휘관을 갖고 싶지 않으므로 이제 우리 데이터베이스를 이렇게 확인해 보겠습니다 그리고 데이터베이스를 보자 이것은 JSON 일 뿐이며 고객 / 제품 내부의 PHP에서 가져 왔습니다 Part 4에있는 이전 부분으로 돌아 가라 그러면 소스 코드를 다운로드 할 수있다

이전에, 아마도 나는 아직 그것을 지퍼로 열지 않았을 것입니다 그래서 계속하기 전에 그것을 할 수있는 좋은시기 일 수 있습니다 괜찮아 나는 그 일을 잊어 버렸다 그래서 복사 만하고, 데이터베이스 일 수도 있고, 고객과 수출 일 수도있다

나는 그 일을 잊어 버렸으므로 지금은 그것을 볼 좋은 시간이다 파일이 많이 있지만, 그 중 일부만 있으면됩니다 알겠습니다 그러면 우리는 그것을 넣을 것입니다 여기에서는 반드시 열어서 웹 서버의 적절한 폴더에 넣으십시오

괜찮아 당신은 그것을 가져 오는 법을 알고 있습니다, 그리고 이것이 코드이고 당신이 원한다면 그것을 바꿀 필요가 있습니다 데이터베이스 이름, 알았어, 암호 또는 기타를 변경하려면, 이것은 전형적인 코드 일뿐입니다 데이터를 읽을 수 있습니다 나는 그것을 조금 설명 할 것이다 그러나 그렇게 어렵지는 않다

단지 그것을 따라 가라 좋아요, 그리고 나서 압축해야합니다 압축하십시오 좋아, 이걸 보니 업로드 할게, 알았어 이제 우리 수업을 계속하자

우리가 사용할 데이터베이스는 고객이고 테이블은 제품이므로 우리는 테이블을 나타내는 클래스를 만들거나 다른 클래스를 만들 것입니다 클래스, 나는 그것을 제품이라고 부르겠다 알았어 직렬화 가능하며 현재 공용 클래스 Product는 Serializable { public int pid; public string name; public int qty; 공개 더블 가격; } 플로트가 그런 식으로 이루어지기 때문에 플로트를 사용해서는 안됩니다 원하지 않습니다

그런 식으로 사용하십시오 따라서 double을 사용하십시오 공용 문자열 image_url; user_ID를 사용하면됩니다 사실, 당신이 잠그면, A 사용자, 그 다음엔 사용자 A의 일부 항목을 표시하려고하지만이 자습서에서는 그렇게하지 않을 것이므로 당신이 그것을 사용하든 원하지 않든, 실제로는 사용하지 않을 것입니다 그런 식으로 넣어

자, 이제 ItemAdapter가 item을위한 것이므로 여기서는 사용하지 않을 것입니다 다른 하나를 만들겠습니다 ProductAdapter입니다 코드가 매우 비슷하기 때문에 그냥 코드를 복사하면, 여기에서 올거야 그럼 내가 바꿀거야, 그래서 이건 ProductAdapter와이 제품은 여기에 동일해야합니다

예! 그런 다음 ViewHolder가 필요합니다 이 네 가지 항목에서 그것은 제품이므로이 제품입니다 나는 이것도 바꿀 것입니다이 것 우리는 이것을 바꿀 것입니다

먼저 삭제하겠습니다 혼동하고 싶지 않습니다 이건 어쩌면 당신 ______과 그럼 또 다른 레이아웃이 필요합니다 레이아웃이 이미 완료되었으므로 복사하여 붙여 넣습니다 당신이 이해하지 못하는 경우를 대비해서, 그 상황 뒤에있는 상황을 알기를 바랍니다

파트 1, 2, 3을 볼 시간이 필요합니다 왜냐하면 나는 같은 시간을 낭비하고 싶지 않기 때문입니다 이 비디오에서 다시 한 번, 이제 우리는 이미 8 분 안에 있습니다 그래서,이 하나는 CardView, 내가 제품으로 변경됩니다 그리고 어쩌면 내가 이름을 사용하려면, 가격은 품질이 그것을 필요로하지 않기 때문에, 우리 주식의 양은 필수적이며, 그러나 단지 이름이 붙여지고, 상금과 이미지가 그 것이다 이건 이미지이고 괜찮아요

아마 다른 이름이 필요할 것입니다이 이름은 이름입니다 네,이게 맨 위에 있거나 뭔가있을 거예요 이전 것을 확인하겠습니다 어쩌면, 우리는 이것을 시도 할 것입니다

예, 예, 괜찮습니다, 예! 이걸 제가 말하고 싶은 것은 이미지뿐만 아니라 나는 그것을 끌고 싶다 ' 끔찍한 음! 좋지 않아 알았어, 내가 해줄 께

나는 그것을 지우고 싶다면 그냥 지우십시오 좋아, 이제 너는 300을 가지려고하고 나면 이미지에서 가지고 싶다 그래서 소스를 넣는다 여기서 안드로이드 drawable / pp는 여기에있는 이미지이고 scaleType은 centerCrop입니다 좋아, 이건 200이 될거고 우리는 또 다른 _____을 쓸거야, 그럴 수있어? 예, 여기가 텍스트 이름이고 다른 가격을 원합니다

이제 자동으로 추가 된 속성과 같은 항목이 있기 때문에 더 좋습니다 나는 그것이 무엇인지 잊었다 그래서 이름을 바꾸어 봅시다 IvImageURL이 될거야, 맞아! 이 하나는 tvName과 tvPrice입니다 우리는 이것을 바꿀 것이기 때문에 아래 레이아웃이이 것입니다

이건 같은,이, 그리고 한 가지 더, 그것은 항상 색상, 문제는 기본 색상이 표시되지 않으므로 여기서 색상을 사용하겠습니다 만약 당신이 그것을 사용하고 싶다면, 당신도 알다시피, [우물 우물쭈물 소리]처럼 16 진수 색상으로도 괜찮습니다 이제 하나의 이미지와 두 개의 텍스트 상자 유형보기가 있습니다 자, 이제 우리는 ProductViewHolder를 만들려고합니다

그래서 CardView 이제는 cvProduct 및 IvImageURL, tvName 및 TV 가격 알았어 그래서 이것은 제품에 대한 ViewHolder입니다 그런 다음 항목이 아닌 여기에 제품이 필요합니다 그래서 여기에도 제품이 필요합니다

좋습니다 만약 굴절시키고 싶다면 그냥 이런 제품으로 바꾸십시오 이건 아직 바뀌지 않았어, 알았어! 이제 새로운 레이아웃을 여기에 부풀려 야합니다 product_cardview_layout입니다 우리가 방금 만든거야, 알았어

이제는 이걸 제외하고는 괜찮아 보입니다 우리는 뭔가를 여기서 묶을거야 그래서 처음에는 텍스트가 더 낫다 그래서 우리는 여기서 제품을 얻을 것입니다 그리고 그것은 무엇입니까? 여기에있는 제품들과 어떤 위치에서, 이 제품 및 홀더 다음 텍스트를 이름에 넣을 수 SetText 이런, 제품 및 이름

한가지 더 가격은이 가격은하지만 가격은 두 배입니다 맞아요 여기에 문자열, 그리고 다시 피카소 알았어 Picasso

width (context) load (productimage_url) placeholder (Rdrawable

pp) error (androidRdrawablestat_notify_error)

into (holderivImgUrl); ViewHolder 측면입니다 좋습니다 이제 좋습니다 자, 이제 싱글 톤, 제품 클래스 그리고이 하나의 아이템을 가지고 있습니다

그러나 우리는 그렇지 않습니다 데이터를 가지고있어, 알았어, 우리는 더 이상 아이템을 사용하지 않을 것이다 더 나은, 그리고이 하나 이제 나는 use을 사용할 것이다 ArrayList <product> ProductList = getDataFromServer (); 우리가 할 수 있을까요? 나는 우리가 싱글 톤을 사용할 것이기 때문에 우리가 할 수 있다고 생각하지 않는다, 아마 우리는 그것을 조금해야만한다

나중에,하지만 이걸 끝내자 이 항목은 더 이상 항목이 아닙니다 그게 제품이야, 알았어 이제 우리가 얻고 자하는 데이터는 여기에서 나온 것이 아니고, JSON의 웹에서 온 것입니다 그런 다음 여기에서 발리 (Volley)를 사용할 필요가 있습니다

그러면 우리가 서버에서 얻을 수있는 것입니다 이제 RecyclerView는 괜찮아 보이지만 Volley를 사용해야하므로 호출해야합니다 여기에 StringRequest가 있고 StringRequest에는 네 개의 매개 변수가 있음을 기억하자 메소드, URL, 응답 및 오류 (좋아, 새로운 StringRequest, 요청 방법 및 사용자) 단지 데이터를 얻고 싶습니다 좋아, URL

그래서 지금은 Google을 테스트하고 테스트하기가 쉽기 때문에 Google에서 테스트하고 싶습니다 여기서 �S forget을 잊어서는 안되며, 지역 호스트에서 ���도 괜찮습니다 이제 두 개 더 필요합니다이 하나가 응답이고 다른 하나가 오류입니다 알았습니다

당신은 여기에서 지저분해질 것입니다 그래서 당신은이 ok, 4 개의 세미콜론을 좋아할 것입니다 그리고 아마도 이것과 같이하는 것이 좋습니다 CtrL + Space를 입력하십시오 우리는 제안으로 볼 것입니다

이것은 데이터 리스너 응답이며이 중 하나 인 CtrL + Space, 오류 리스너입니다 따라서 여기에 오류가 발생할 때마다 오류가 표시됩니다 오류가 발생하지 않는 경우를 대비해서, 너는 아무것도 볼 수 없을거야 오류가 발생하면 오류가 종료되는 것처럼 테스트해야하므로 그 의미는 약간의 오류가 있으므로 오류 결과를 _____에 표시하려면 오류를 닫는 것이 좋습니다 나 한테 뭔가 잘못된 것처럼 말할 수있어, 알았어

이런 식으로 사용자를 놀라게하고 싶지는 않지만, 우리는 로그하고 볼 필요가 있습니다 오류, 그래서 우리는 태그, 오류가 있어야합니다, 당신은 여기에 메시지를, 그리고 여기에 태그를 대개 여기서 이름을 사용하십시오 그래서 최종 문자열 TAG = �MainActivity�; 이런, 괜찮아! 자, 이제 실제 코드를 사용하겠다는 응답을 얻고 싶습니다

로그이므로 결과는 여기서 ______로 표시되므로 데이터를 가져올 지 알 수 있습니다 Google에서 제공했는지 여부 좋아,이 중 하나는 사용할 수 없으므로 이제 실행 해 보겠습니다 로컬 호스트를 테스트하는 것이 에뮬레이터에서 가져 오는 것이 좋습니다 하지만 지금은 먼저 Google을 테스트 해 보도록하겠습니다

잊어 버리면 잊지 않을 것입니다 오류가있다 Ok, 오! 나는 이것을 잊었다

방금 StringRequest를 호출했지만 Singleton에 추가하지 않았습니다 Singleton은 현장에서 지휘관과 같다고 생각합니다 이전 비디오에서 설명했습니다 이것을 사용할 수는 있지만 사용하는 것이 좋습니다 그것과 같은 ApplicationContext는 큐를 추가하고 여기에 StringRequest를 추가한다

한 번 더 테스트를 한 후 여기서 내부 호스트를 테스트 할 것입니다 이전 비디오에서 말했던 것처럼 다음과 같은 두 가지 공통적 인 문제가 나타납니다 1 금지 된 사용 권한 2

JSON malfom 이 문제는 많은 문제를 일으킬 수 있으므로 여기에서 연결할 수 있는지 확인하십시오 이제 구글을 보자 이제 구글을 볼 수있다 예! 우리는 그것을 볼 수 있습니다

여기 아래에 있습니다 찾을 수 없다면 MainActivity를 입력하십시오 태그를 사용했기 때문입니다 네, 수업의 이름으로 태그를 볼 수 있습니다 다음은 Google입니다

이제 인터넷에 연결할 수 있음을 의미합니다 이제는 로컬 호스트를 테스트하는 좋은 시간이고 로컬 호스트에는 's'및 또한이 같은 로컬 호스트 말할 수 없다! 별칭 1003

2를 넣어야합니다 나 같은 동작이 필요한 경우 숫자 10032를 사용해야하지만 u가 실행되는 경우 위의 옵션이있는 것처럼 숫자 10

022와 같이 사용할 수 있습니다 if BlueStacks를 사용하고 100

22도 사용하십시오 예를 들어 현재 포트 번호가 80 인 경우 다른 포트를 사용하는 경우 여기에 열 다음에 전체 URL의 경로를 지정해야합니다 이런 식으로 복사하여 붙여 넣는 것이 좋습니다하지만 여기서는 1 번부터 테스트해야합니다

당신은 을 입력해야합니다 좋아, 테스트 해보자 내가 실행할 수 있는지 없는지 설명 할거야

자, 이제 JSON을 여기에서 얻을 수 있습니다 그러나 언젠가는 이것을 가지고 있지 않을 것입니다 이걸 보게되면, 행운을 빈다 그러나 그렇지 않다면, 돌아가서 ''라고 타이핑해야한다 과 나는 너를 잘 이해할 수 있기 때문에 너희들 대부분이 나 같은 행운이되지 않을 것이다

그리고 나는 항상 그렇게 해 나는 그것을 고치는 법을 알고 있지만, 당신을 위해, 나는이 문제를 계속해서 반복 할 것이라고 생각합니다 다시 한 번 질문을 많이 했으므로 이제 어떻게 해결할 수 있는지 보여 드리겠습니다 YouTube 시청자 따라서 http를 입력해야합니다

좋아요 다음과 같이 입력 할 수 없습니다 Google은 사용자가 무언가를 입력 할 때 여전히 필요로하는 것처럼 입력하므로 http, 1003

2 및 ENTER를 입력하십시오 이런 것을 볼 수 있습니까? 좋아, 그렇지 않으면 구성 및 구성 파일로 이동하여 수정해야합니다 여기서도 허가를 변경하십시오 모두가 당연한 것으로 요구하십시오 임무가 거부 된 것처럼 보이면, 당신은 모든 부여 된 것을 요구하기 위해 변화합니다

좋아, 좋아 한 가지 더, JASON malform은 일반적으로 notepad ++입니다 그것은 당신이 여기에서 볼 때, 당신은 무언가를 앞에 볼 것입니다 두 개의 UTF, UTF-8이 있지만 다른 하나는 BOM이없는 UTF-8입니다 그래서 메모장 + + 및 다른 도구는 일반적으로이 서식이 있으므로 변경해야합니다

UTF-8로 오케이 메모장 + + 특히 당신은 메뉴에 가서 좋아해요 그것을 작동시키고 다른 텍스트 편집기를 사용한다면 스스로 처리해야합니다 어떤 텍스트 편집기를 사용하고 있는지 모르겠다 문제가 있다면, 이 비디오의 아래에, 나는 당신에게 말할 것입니다

자, 이제 텍스트를 얻었습니다 JSON을 가지고 있습니다 이제 JSON 텍스트를 변환하고 싶습니다 좋아, ArrayList에 마지막 부분 그래서 저는 이것을위한 도서관을 가지고 있습니다

직접 변환하려는 경우 라이브러리를 사용할 수 있습니다 이렇게 githubcom/kosalgeek에 가보십시오 그러면 KGJasonConverter에 가보겠습니다 나는 PhtoUtil과 같은 좋은 라이브러리를 가지고있다

FileCacher가있다 asynctask 1과 2 (MD5)에 대한 것이지만, 우리는 KGJasonConverter를 사용할 것입니다 당신이해야 할 일은 그것을 다운로드하고 GSON을 다운로드하는 것입니다 그래서 오른쪽 클릭을하십시오 그리고 나서 내 것을 다운로드하십시오, 그래서 그것을 다운로드하고, 그 재료를 변환하는 방법, 괜찮아

그래서, 당신은 GSON이 필요합니다 그리고 아마도 당신도 GRADLE을 사용할 수 있습니다 그러나 나는 잊었습니다 그것은 당신이 그것을 찾을 수 없다면, 단지 GSON을 다운로드 할 수 있습니다, 그 벌금, 그냥 다운로드, 알았어

그래서 당신은 이것을 필요로하므로, 당신도 이것을 필요로합니다 어디 있니? 맥 오 맥! 못 찾겠 어 어쨌든, 하나씩 복사하고 프로젝트로 가서 당신은 여기로, 당신은 프로젝트 파일로 이동하십시오 당신이 그것을 볼 수 없다면, 여기를 클릭하십시오, 프로젝트 파일 및 당신은 응용 프로그램과 libs에 가서 오른쪽 클릭 붙여 넣으세요, 알았어요 지금 라이브러리를 실행하고 추가하면 GSON도 필요합니다

이제 인덱싱을하고 있어요 건물을 통과 할 수 없기 때문에 조금 기다려야했습니다 비트 좋아, 이제 지나쳤다 오른쪽 다리와 라이브러리를 추가하십시오

이제 안드로이드로 돌아갈 수 있습니다 여기에서 Gradle을 다시 확인할 수 있습니다 이제는 컴파일러에서의 화재도 볼 수 있습니다 이제 내 라이브러리를 사용할 준비가되었습니다 여기에서 응답 내에서이 라이브러리를 사용할 것입니다

왜냐하면 여기가 하나의 ______ 방법과 같기 때문에, 당신이해야 할 일, 당신이 아는 모든 것 방법 안에서 수행해야하는 작업을 원한다면 당신은 데이터를 얻고 싶습니다, 당신은 얻을 수 없습니다, 당신은 ok 안에 들어가야 만합니다 파트너 옵저버를 안다면 다른 파트너를 만들 수 있습니다 인터페이스가 있지만, 실제로는 당신을 위해 일할 것입니다하지만 그걸 안으로하십시오, 알았습니다 여기에는 아주 작은 것이있을 것입니다

여기에 그것을 사용하려면 두 가지 방법이 있습니다 괜찮습니다하지만 바깥 쪽을 사용하려면, 괜찮아요, 그냥 이렇게 자르고 이것으로 바꾸세요 지금은 괜찮아요 그리고 그것은 classier를 구현하는 것과 같습니다

이런 식으로 밖에 좋은 방법이있어, 알았어 그리고 너는 밖에서 뭔가 쓸 수있어 하지만 당신이 사용하기를 원하지만 대부분 사람들은 그것은, 그러나 당신이 5를 따르는 것이 좋은 습관입니다 어쨌든 이제 JSON을 얻었으므로 변환 할 코드는 코드 한 줄에 불과합니다 예! 그냥 복사 해

알았어 그게 바로 복사해서 지금은 여기에서 바꾸고 싶습니다 그래서 이것은 제품 라인입니다 우리는 제품에 대해 이야기하고 있으며 이것은 다시 제품입니다 이제 JSON이 이것입니다, 알았습니다

이것은 ProductList입니다 이전 비디오에서 우리는 더미에서 데이터를 생성하는 것처럼 사용했습니다 이제 베타 버전이므로 지금 전화 해주세요 그래서이 코드는 외부에서 사용되었으므로 이제 여기에서 메서드를 사용하려고합니다 이제 ProductList가 JSON에서 가져오고 데이터를 넣습니다

ProductAdapter에 추가하십시오 사실, 여기에 ProductAdapter가 이미 생성되었으므로 지금은 좋습니다 여기에 데이터가 표시됩니다 문제는 이제 이미지를 볼 때 기억합니다 이미지 이름의 마지막 부분 만 넣습니다

괜찮아 그래서 이제 우리는 세 가지 ______를 갖습니다 왜냐하면 그 이미지는 URL 형식으로 이미지는 costumer 안에 있습니다 좋아요 고객과 이미지는 괜찮습니다

그래서 우리는 이것을 복사 할 것입니다, 좋아요, 여기, 여기, 여기에 그것을 사용할 것입니다 전체 URL과 실제 프로젝트에서 이와 같은 작업을 수행하는 것이 좋습니다 이 URL을 실제 URL로 변경하십시오 내 웹 사이트가 코사크 인 경우, 괜찮아 하지만 지금은 지역의 사람들을 위해서, 그냥 이렇게하고 우리가 이것 전에 슬래쉬하지 않는다는 것을 기억하십시오

우리는 여기에 슬래쉬를 추가 할 것이지만이 같은 공간과 제품은 여기에 없습니다 좋아, 좋아 보인다 이제, 여기에 새로운 LinearLayout과 LayoutManager가 있습니다 좋아요, 여기 안쪽에 어댑터를 설치하려고합니다 우리는 그것을 호출 할 것입니다

승인 좋아 보인다, 나는 그것이 지금 좋을 것이기를 바란다 그래서 여기의 이미지, 예! 제품 CardView 좋아,이 하나의 컨텍스트, 제품, 제품, 알았어! IvImageURL 및 tvName 및 tvPrice 좋아, 좋아 보인다, 달려 가자 서버가 실행 중인지 확인하십시오

와우! 그것은 매우 오랜 시간이 걸립니다 멈추게 해줘 알았지? 이것은 우리가 지금 데이터베이스 서버에서 얻은 데이터입니다 확인해 봅시다이 사진은 그림 1, 선택 3은 선택하지 않습니다

ID # 3이 처음입니다 일부 사진이 삭제되었으므로 그림 3, 예이 사진이 있습니다 오, 안돼, 안돼, 우리가 거꾸로하고, 잊어 버렸어 그래서 그것을 뒤집었고, 그래서 그것은 정상에서 11 번째가 될거야

하단에 # 3이 있으므로 이미지 # 6이 여기에 있습니다 네! 올바른 것입니까! 흠! 흥미 롭다 왜 이걸 가지고 있니, # 7? 보자 이건 12입니다, 알았어 맞아

첫 번째와 # 6, 예, 크기를 변경할 수 있습니다 패딩을 변경할 수 있습니다 너 괜찮아 그래서, 조금 요약 해 보겠습니다 여기에는 많은 단계가 있습니다

이것은 전체 단계이지만 RecyclerView의 일부일뿐입니다 여기 데이터가 있으면 여기서도 많은 단계가 필요할 것입니다 그렇습니다 세 가지 요청에서 네 개의 매개 변수, 알겠습니다 그러면 데이터를 얻은 다음 변환합니다

데이터 및이 라이브러리는 방금 사용했습니다 너는 너 자신을 쓸 수있다 그것은 거대한 일이 될 것입니다 여기 이전 부분이 있습니다 아시다시피, 여기가 새로운 것이고, Volley입니다

웹에서 가져온 데이터를 다시 검색 할 수 있습니다 URL이 잘못되었다고 가정 해 봅시다이 중 하나가 없으면 시도해보십시오 우리가 끝내기 전에 한가지 빨리 해보고 오류가 있는지 보자 그리고 지금 당신은 그것을 막을 것입니다

그래서 이것은 하나의 실수입니다 왜냐하면 이것은 마사지이기 때문에 두 개의 문자열을 넣어야합니다 다시 실행하십시오 현재 작동하고 있기 때문에 어떤 문제도 발생하지 않기 때문에 어쩌면 작동하지 않는 앱 일 수도 있습니다 내가 어떻게 그럴 수 있니, 어떻게하면 돼, 너도 알다시피, 너는 아마도 불평 할거야

그것에 대해 좋아, 이제 또 다른 유형, 다른 유형을 보자, ok 75 여기, 오류가 아닙니다 왜 당신은 그것에 대해 불평하고 있습니까, 아니면 언젠가 당신이 처음부터 그것을 다시해야 할 때가 있습니다 너도 알다시피, 그것은 이전의 것과 계속 같다 내가 다시 실행하게 해줘

좋아, 뭔가 잘못 됐어, 이제 서버 오류를 보자, 알았어 다시 한번 보자 우리가 다른 것을 얻을 수 있고 이렇게 메시지를 얻을 수 있다면 그렇게 할 수 있을까? 오, 여기 메시지를받을 수 없으니 괜찮습니다 그냥 이렇게하세요 괜찮습니다

그것을 아는 것이 좋다, 너는 알고있다 좋아, 이제 Android Volley에 대해 자세히 알고 싶다면 다음과 같이 제안하고 싶습니다 내 YouTube 채널로 이동하면 Android Volley에 대한 많은 동영상을 볼 수 있습니다 이 재생 목록에서 처음부터 시작합니다 예를 들어, 설정 및 방법 에서처럼 세 가지 요청 인 JSON을 사용하고, 업데이트하고 싶습니다

데이터 오류를 삽입합니다 Android Volley와 함께 할 수있는 다른 것들도 있습니다 마지막으로 잊지 말고 내 채널을 구독하고 엄지 손가락을주세요 만약 의견이 있으시면 아래에 의견을 남겨주십시오 당분간 나는 작별 인사를하고 싶습니다

그리고 나는 당신을 다음 번에 보게 될 것입니다 이미지 이름의 마지막 부분 만 알았어 이제 이미지가 URL 형식이되기 때문에 세 개의 ______가 있습니다 이미지는 costumer 안에 있습니다 좋아요

고객과 이미지는 괜찮습니다 그래서 우리는 이것을 복사 할 것입니다, 좋아요, 여기, 여기, 여기에 그것을 사용할 것입니다 전체 URL과 실제 프로젝트에서 이와 같은 작업을 수행하는 것이 좋습니다 이 URL을 실제 URL로 변경하십시오 내 웹 사이트가 코사크 인 경우, 괜찮아

하지만 지금은 지역의 사람들을 위해서, 그냥 이렇게하고 우리가 이것 전에 슬래쉬하지 않는다는 것을 기억하십시오 우리는 여기에 슬래쉬를 추가 할 것이지만이 같은 공간과 제품은 여기에 없습니다 좋아, 좋아 보인다 이제, 여기에 새로운 LinearLayout과 LayoutManager가 있습니다 좋아요, 여기 안쪽에 어댑터를 설치하려고합니다

우리는 그것을 호출 할 것입니다 승인 좋아 보인다, 나는 그것이 지금 좋을 것이기를 바란다 그래서 여기의 이미지, 예! 제품 CardView 좋아,이 하나의 컨텍스트, 제품, 제품, 알았어! IvImageURL 및 tvName 및 tvPrice 알았어, 좋아 보인다

서버가 실행 중인지 확인하십시오 와우! 그것은 매우 오랜 시간이 걸립니다 멈추게 해줘 알았지? 이것은 우리가 지금 데이터베이스 서버에서 얻은 데이터입니다 확인해 봅시다

이 사진은 그림 1, 선택 3은 선택하지 않습니다 ID # 3이 처음입니다 일부 사진이 삭제되었으므로 그림 3, 예이 사진이 있습니다 오, 안돼, 안돼, 우리가 거꾸로하고, 잊어 버렸어

그래서 그것을 뒤집었고, 그래서 그것은 정상에서 11 번째가 될거야 하단에 # 3이 있으므로 이미지 # 6이 여기에 있습니다 네! 올바른 것입니까! 흠! 왜 이걸 가지고 있니, # 7? 어디 보자 이건 12입니다, 알았어 맞아

첫 번째와 # 6, 예, 크기를 변경할 수 있습니다 패딩을 변경할 수 있습니다 너 괜찮아 그래서, 조금 요약 해 보겠습니다 여기에는 많은 단계가 있습니다

이것은 전체 단계이지만 RecyclerView의 일부일뿐입니다 여기 데이터가 있으면 여기서도 많은 단계가 필요할 것입니다 그렇습니다 세 가지 요청에서 네 개의 매개 변수, 알겠습니다 그러면 데이터를 얻은 다음 변환합니다

데이터 및이 라이브러리는 방금 사용했습니다 너는 너 자신을 쓸 수있다 그것은 거대한 일이 될 것입니다 여기 이전 부분이 있습니다 아시다시피, 여기가 새로운 것이고, Volley입니다

웹에서 가져온 데이터를 다시 검색 할 수 있습니다 URL이 잘못되었다고 가정 해 봅시다이 중 하나가 없으면 시도해보십시오 우리가 끝내기 전에 한가지 빨리 해보고 오류가 있는지 보자 그리고 지금 당신은 그것을 막을 것입니다

그래서 이것은 하나의 실수입니다 왜냐하면 이것은 마사지이기 때문에 두 개의 문자열을 넣어야합니다 다시 실행하십시오 현재 작동하고 있기 때문에 어떤 문제도 발생하지 않기 때문에 어쩌면 작동하지 않는 앱 일 수도 있습니다 내가 어떻게 그럴 수 있니, 어떻게하면 돼, 너도 알다시피, 너는 아마도 불평 할거야

그것에 대해 좋아, 이제 또 다른 유형, 다른 유형을 보자, ok 75 여기, 오류가 아닙니다 왜 당신은 그것에 대해 불평하고 있습니까, 아니면 언젠가 당신이 처음부터 그것을 다시해야 할 때가 있습니다 너도 알다시피, 그것은 이전의 것과 계속 같다 내가 다시 실행하게 해줘

좋아, 뭔가 잘못 됐어, 이제 서버 오류를 보자, 알았어 다시 한번 보자 우리가 다른 것을 얻을 수 있고 이렇게 메시지를 얻을 수 있다면 그렇게 할 수 있을까? 오, 여기 메시지를받을 수 없으니 괜찮습니다 그냥 이렇게하세요 괜찮습니다

그걸 알면 반가워요 좋아, 이제 Android Volley에 대해 자세히 알고 싶다면 다음과 같이 제안하고 싶습니다 내 YouTube 채널로 이동하면 Android Volley에 대한 많은 동영상을 볼 수 있습니다 이 재생 목록에서 처음부터 시작합니다 예를 들어, 설정 및 방법 에서처럼 세 가지 요청 인 JSON을 사용하고, 업데이트하고 싶습니다

데이터 오류를 삽입합니다 Android Volley와 함께 할 수있는 다른 것들도 있습니다 마지막으로 잊지 말고 내 채널을 구독하고 엄지 손가락을주세요 만약 의견이 있으시면 아래에 의견을 남겨주십시오 지금은 작별 인사를하고 싶습니다

가까운 장래에 만나겠습니다

Building Your First Android & iOS App in Visual Studio 2017

>> 안녕하세요, 저는 James Montemagno입니다 프로그램 관리자 여기에 Microsoft의 모바일 개발자 도구가 포함되어 있습니다

오늘, 우리는 그것이 얼마나 쉬운지를 볼 것입니다 처음으로 iOS를 빌드하고 Visual Studio 2017에 직접 안드로이드 응용 프로그램 먼저 Visual Studio로 가서 시작하십시오 여기, 우리는 Visual Studio 2017 안에 있습니다 우리의 첫 번째 프로젝트를 만들어 보겠습니다

이제 우리의 새로운 프로젝트 대화에서, 우리는 안드로이드, 아이폰, 및 iPad, 심지어는 Apple TV 및 Watch 응용 프로그램, 크로스 플랫폼부터 시작하겠습니다 여기에서 나는 XamarinForms에 기반한 모바일 앱 이것은 C Sharp와 공유 할 것입니다 모든 비즈니스 로직에 대한 백엔드 및 Xaml에서 제공하는 공유 원시 사용자 인터페이스 "Okay"를 선택하겠습니다

여기에는 다음과 같은 몇 가지 옵션이 있습니다 우리가 목표로 삼고 싶은 빈 앱과 플랫폼 그러면 우리는 NET 표준을 선택할 것입니다 도서관으로서의 방법 각 플랫폼에서 코드 공유, 간단히 "Okay"를 누르십시오

비주얼 스튜디오 2017은 행동으로 도약하며, 나를 위해 세 가지 프로젝트를 만듭니다NET 표준 라이브러리, 내 안드로이드 프로젝트, 내 iOS 프로젝트 확대하고 좀 더 자세히 살펴 보겠습니다 내가 아직도 전체 NET 표준 라이브러리가 있어야하며, App26, 내 모든 의존성과 내 공유 Xamarin 사용자 인터페이스

나는 또한 내 안드로이드 프로젝트가있다 쓸 수있는 iOS 프로젝트 플랫폼 특정 코드 C에서 각 플랫폼에 대한 API의 100 %가 예리함, 하지만 우리는 공유 코드 및 NET 표준 라이브러리 음, 먼저 Appxaml을 가지고 있다는 점에 유의하십시오

그래서 내가 공유 리소스를 추가 할 수 있습니다 내가 사용하고있는 색상과 같은 그러나 작은 화살표 드롭 다운을 클릭하면 볼 수 있습니다 Appxaml CS의 일부 코드, 해당 Xaml 페이지와 관련된 C Sharp 파일 여기에 응용 프로그램이 시작될 때, 새로운 메인 페이지를 만듭니다 또한 시작, 종료, 종료 등의 몇 가지 라이프 사이클 이벤트가 있습니다

수면과 이력서 그러나 그 메인 페이지에 초점을 맞추자 여기에 내 응용 프로그램의 대량입니다 내가 할 수있는 스택 레이아웃이있다 서로 다른 컨트롤을 겹쳐 쌓고, 그 안에는 다음과 같은 라벨이 있습니다

"Xamarin Forms에 오신 것을 환영합니다" 이제 Android 에뮬레이터를 선택하고 단순히 응용 프로그램을 시작하려고합니다 내 응용 프로그램을 완전히 컴파일합니다 내 컴퓨터를 내 안드로이드 에뮬레이터에 배치하십시오 그래서 몇 초만 기다려 봅시다

자 간다 우리의 응용 프로그램은 우리의 안드로이드 에뮬레이터의 내부에서 시작, 그리고 그것이 끝날 때 우리가보아야 할 것 로딩은 XamarinForms에 오신 것을 환영합니다 자, 좀 더 창의적인 것을 해보 죠 계속해서 버튼을 추가하십시오

여기 그리고 우리가 클릭 할 때마다, 그것은 카운트를 증가시킬 것이다 이를 사용자에게 표시합니다 이제 Visual Studio 2017로 다시 넘어 갑시다 이제 버튼을 추가하기 만하면됩니다 여기, 나는 풍부한 IntelliSense를 얻을 것이다

사용할 수있는 모든 속성을 보여 주며, 그래서 여기에 텍스트가 있고 나는 "나를 클릭하십시오"라고 말할 것입니다 그런 다음 클릭 이벤트를 추가하겠습니다 우리는 새로운 사건 망치를 말할 것입니다 이렇게하면 자동으로 코드가 생성되고 우리가 구현할 수있는 코드

버튼 요소를 간단히 끝내기 만하면됩니다 그럼, 그 메인 페이지로 가자 Xaml CS 및 코드 배후, 여기에 방금 만든 버튼이 있습니다 로컬 변수를 만들겠습니다 Count라는 값을 0으로 설정하면, 버튼을 클릭 할 때마다, 우리는 백작 플러스라고 말할 것입니다

그러면 우리가하는 일은 간단히 말해서, "발신자가 버튼이라는 것을 알았습니다 우리는 텍스트를 업데이트하려고합니다 "그곳에 있습니다 우리는 C 샤프 (C Sharp) "클릭, 카운트, 시간" 우리는 거기에 갈

이제 우리가해야 할 일은 간단합니다 우리 응용 프로그램을 재배포하십시오 우리의 응용 프로그램과 모든 응용 프로그램을 다시 컴파일합니다 우리의 변화를 우리의 안드로이드 에뮬레이터에 재배포 여기에,에 오신 것을 환영합니다

XamarinForms와 "Click me"버튼이 있습니다 자, 클릭하고 클릭하십시오 우리는 거기에 갈 매번이 횟수를 계속 늘립니다

이제 iOS 프로젝트를 시작으로 설정할 수 있습니다 Mac OS 머신을 가지고 있다면, 계속해서 연결하여 다음과 같이 사용할 수 있습니다 컴파일을 빌드하는 원격 맥 컴퓨터 원격 iOS 시뮬레이터 사용 Windows 컴퓨터에서 바로 실행하십시오 동일한 정확한 Android 애플리케이션 iOS에 사용자 인터페이스가 필요한 iOS 더 배우고 시작하려면, docs

microsoftcom으로 이동하여 Xamarin, 그 다음에는 시작하기에 충분할 것입니다 가이드 샘플과 모든 것 당신이 시작해야합니다 됐어 처음으로 iOS를 구축했으며 Visual Studio 201 안의 안드로이드 애플리케이션

전혀 궁금한 점이 있으시면 연락을 주시고, 보고 주셔서 감사합니다

How to convert java code to kotlin in intellij idea | Android Studio

이 비디오에서는 자바 코드를 kotlin으로 변환하는 방법을 보여 드리겠습니다 이제 자바 파일을 열어 보았습니다

메뉴 막대의 코드로 이동 자바 파일을 Kotlin 파일로 변환을 클릭하십시오 확인을 클릭하십시오 코 틀린 코드는 여기에있다 너는 달릴 수있어 보고 주셔서 감사합니다

How to use Youtube API Library in Android Studio

안녕하세요, 내 안드로이드 비디오 튜토리얼에 오신 것을 환영합니다! 오늘은 Android Studio 애플리케이션에서 YouTube API를 구현하는 방법에 대해 알아 보겠습니다 그래서 시작하자

! 먼저 새 프로젝트를 만들면 "새 Android Studio 프로젝트 시작"을 클릭합니다 이제이 애플리케이션을 처음부터 구현할 예정이므로 빈 활동을 선택하고 다음을 클릭하십시오 여기서는 애플리케이션의 프로젝트 이름을 지정하고 최소 API 레벨을 22, 즉 Android 5

1로 선택합니다 원하는 경우 다른 API 레벨을 선택할 수 있습니다 이제 API 22를 선택하고 마침을 클릭하십시오 그래서 안드로이드 스튜디오가 우리 프로젝트를로드 할 수 있도록 몇 초를 기다려 봅시다 이제 안드로이드 애플리케이션을 구현할 준비가되었습니다 먼저 YouTube API를 만들어야 응용 프로그램에서이 키를 사용할 수 있습니다 이제 Googlecom으로 이동하여 Google 개발자 콘솔을 검색하십시오

이제 Google 계정 자격 증명으로 로그인하십시오 로그인하면 대시 보드가 표시되어 개발자 콘솔에서 YouTube API 키를 생성하는 새 프로젝트를 만듭니다 새 프로젝트를 클릭하면 프로젝트 이름을 지정해야하는 페이지가 열리 며, 이름을 YouTubePlayerAPI로 지정했습니다 이제 CREATE를 클릭하면 새로운 프로젝트가 성공적으로 생성되었습니다 다음 단계에서는 앱 및 서비스를 사용하도록 설정해야하므로 '앱 및 서비스 사용'을 클릭하십시오

서비스를 사용하도록 설정하면 Android 애플리케이션에서 사용할 수있는 다양한 API가 있음을 알 수 있습니다 이제 "YouTube Data API v3"을 선택하고 클릭하여 활성화하십시오 사용 설정하면 자격 증명을 만들라는 메시지가 표시되므로 '크레딧 작성'을 클릭하십시오 'API 키'옵션을 선택하면 API 키의 이름을 지정하고 'Android Apps'로 플랫폼을 선택할 수 있습니다 이제 우리는 Android Studio 응용 프로그램에서 지문을 제공해야합니다

그러면 우리는 안드로이드 응용 프로그램을 API와 연결할 것입니다 따라서 지문을 얻으려면 Android 스튜디오 프로젝트로 이동하여 상단 메뉴에서 '빌드'를 클릭하고 '서명 된 APK 생성'을 선택하십시오 이제 APK를 선택하고 다음을 클릭하고 "새로 만들기"를 클릭하면 새 창이 열립니다 여기서 키를 저장할 경로를 선택해야만 광산을 선택하고 경로를 메모장에 복사 할 수 있습니다 이제 위 / 아래 필드에 비밀번호를 입력하고 "확인"을 클릭 한 후 "다음"을 클릭하십시오

"debug"및 서명 버전을 선택한 다음 Finish를 클릭하십시오 이제 서명 된 APK가 성공적으로 생성되었습니다 이제 터미널로 이동하여 시스템에 저장된 키의 경로로 명령을 복사하여 붙여넣고 Enter 키를 누르고 키 저장소 암호를 제공하고 Enter 키를 누릅니다 이제 위로 스크롤하여 우리가 필요로하는 SHA1 지문 코드를 찾으십시오 이 코드를 복사하여 해당 지문 필드에 붙여 넣으십시오

또한 안드로이드 응용 프로그램의 패키지 이름이 필요하므로 manefist 파일로 이동하여 패키지 이름을 복사하여 패키지 이름 fild에 붙여 넣으십시오 이제 "CREATE"를 클릭하면 API 키가 생성됩니다 이제 우리의 안드로이드 애플리케이션에서이 API 키를 사용할 수 있습니다 이제 API 키를 만들었고 이제 Android 애플리케이션 용 YouTube 플레이어 라이브러리가 필요합니다 YouTube 플레이어 라이브러리를 검색하고 다운로드하십시오

이제 Download 폴더에서 YouTubeAndroidPlayerApi Zip 파일을 추출하고 폴더를 열고 libs 폴더로 이동하여 jar 파일을 복사합니다 이제 안드로이드 프로젝트 구조를 Android에서 프로젝트로 변경하고 jar 파일을 libs 폴더에 붙여 넣으십시오 그런 다음 jar 종속성을 추가해야하므로 왼쪽 상단에있는 파일로 이동하여 프로젝트 구조를 선택하십시오 새 창이 열리면 이제 앱 섹션으로 이동하여 종속성을 선택하십시오 여기에 + 기호를 클릭하고 jar 의존성을 선택하고 libs 폴더에서 jar 파일을 선택한 다음 "OK"를 클릭 한 다음 "OK"를 다시 누릅니다

우리는 이제 프로젝트에 jar 종속성을 추가 했으므로 프로젝트 구조를 Android로 변경합니다 다음 단계에서는 인터넷에 접속하여 매니페스트 파일을 열고 인터넷 사용 권한을 부여 할 수 있도록 인터넷 사용 권한이 필요합니다 이제 코드를 작성할 준비가되었으므로 먼저 Activity XML 파일을 디자인 해 보겠습니다 activity_mainxml 파일로 이동하여 여기에서 몇 가지 사항을 변경합니다

먼저, Constraint Layout을 Relative Layout으로 변경해야합니다 이제 여기에 버튼을 추가하고이를 일치하는 부모로 만든 다음 "Play Video"라는 텍스트 이름을 지정하고이 버튼을 중앙에 배치합니다 다음 단계에서는 사용자 정의보기를 추가하여 YouTube 비디오를 보여줍니다 따라서 팔레트에서 사용자 정의보기를 선택하고 단추 위에 놓습니다 YouTube 동영상을 표시 할 수 있도록 YouTubePlayerView를 선택해야합니다

이제 기본 XML 파일로 이동하여 내용을 변경하십시오 이것이 디자인 부분에서 나온 것입니다 이제 주 활동에 주 코드를 작성합니다 따라서이 구현에서는 클래스가 YoutubeBaseActivity를 확장해야합니다 그런 다음 YoutubeListener를 초기화하고 초기화합니다

이제 onInitializationSuccess 메소드 내부에서 YoutubePlayerloadVideo ( "YouTube에서 URL을 전달해야 함")을 작성합니다 여기에서는 클릭 리스너를 구현하고 그 내부에 YoutubePlayerViewinitialize ()를 입력합니다 이제 우리가 생성 한 API 키로 첫 번째 매개 변수를 전달합니다

개발자 콘솔로 이동하여 API 키를 복사 한 다음 YoutubePayerViewinitialize ( 'API kEY 여기') 메소드에 붙여 넣으세요 두 번째 매개 변수는 유튜브 리스너를 선택하십시오 이제는이 응용 프로그램을 실행하고 결과물을 보도록하겠습니다 이 비디오가 마음에 들면이 비디오를 즐기고, 같이 공유하고, 의견을 남기고, 가입하십시오

시청 해주셔서 감사합니다!

Layout Editor (Ep 3, Android Studio)

전 코드작성을 좋아합니다 저와 비슷한 분이시라면 가장 정교한 로직의 앱을 만드는 것이 훌륭한 유저 인터페이스를 만드는 것보다 오히려 쉽게 느껴질 겁니다 디자인이 발전함에 따라 기기에서 레이아웃의 변화를 일일이 테스트 하는 일이 따분할 수 있지요 레이아웃 편집기는 안드로이드 스튜디오 내장 툴로서 APK를 실제 기기나 에뮬레이터에 배치하거나 다시 컴파일 할 필요 없이 레이아웃의 실시간 편집과 미리보기를 가능하게 해 줍니다 레이아웃 편집기는 XML 레이아웃 파일을 열 때마다 자동으로 들어옵니다 디자인 뷰는 요소들을 팔레트에서 스테이지로 끌어서 쉽게 추가하고 조종하게 해 줍니다 시각단서는 서로 연계된 뷰의 포지션을 돕는데 이때 부모 노드 클래스와 요구되는 레이아웃 변수가 고려됩니다 다른 뷰의 속성을 인스펙터에서 편집하거나 컴포넌트 트리 판에서 뷰의 계층 위치를 바꿀 수 있습니다 뷰를 설정한 후 클래스 변경을 결정할 때 쉽게 사용할 수 있는 요령이 있습니다 뷰를 오른쪽 클릭하고 원하는 요소를 모핑 메뉴에서 선택하세요 이치에 맞는 변화만을 허용하기 위해서 일정한 제한이 있다는 것을 기억해 두세요 예를 들어 선형으로 된 레이아웃은 텍스트 뷰로 모핑되지 않습니다 뷰 계층의 부분들이 다른 레이아웃에서 재사용 될 수 있는 게 보일 때마다 Extract 레이아웃이라 불리는 리팩토링이 있습니다 그것을 활성화하면 선택된 서브트리가 별도의 리소스로 들어가게 되고 현재 레이아웃으로 포함됩니다 새 파일을 편집을 위해 열면 원본 계층의 미리보기에서 아직도 그대로 있는 것을 볼 수 있습니다 안드로이드 스튜디오가 XML이 리팩토링을 시행할 때 특별한 힌트를 추가했기 때문입니다 이것을 보기 위해서는 텍스트 탭을 눌러서 XML의 편집으로 전환하세요 비주얼 편집기 대신에 코드 작업 시, 실시간으로 업데이트가 되는 라이브 프리뷰 창이 있음을 보십시오 기본 디자인 뷰 대신 코드를 보는 것을 항상 선호한다면 여기서 Prefer XML Editor 옵션을 선택하세요 위에서 언급한 렌더러에 대한 힌트는 두 부분으로 구성되어 있습니다 한 부분은 루트 XML 노드에 새로운 툴 이름 공간입니다 다른 부분은 특별한 어노테이션 세트로 실행시간에는 영향을 주지 않지만 안드로이드 스튜디오에 의해서 처리됩니다 여기에, Include 태그 자리에서 다른 레이아웃 컨텍스트에서 작업 중인 파일을 전달하는 Show In 속성을 볼 수 있습니다 이것도 유용하지만 제 생산성을 북돋아주는 다른 형태의 힌트가 또 있습니다 미리 알아두면 유용합니다 툴 이름 공간으로 프리픽스 함으로써 사실 대부분의 뷰 속성을 무시할 수 있습니다 간단해 보여도 어떻게 작용하는지 살펴보세요 리스트 뷰 같은 데이터 공급을 위한 어댑터가 필요해서 레이아웃이 블랭크 텍스트뷰가 됐던 적이 있나요? 툴 이름 공간을 사용해 더미 텍스트를 추가하고 본인의 레이아웃을 즉시 읽을 수 있게 만드세요 레이아웃의 일부가 Gone 또는 Invisible로 돼있고 실행시간 조건에 따라서만 보인다면 어떨까요? 디자인시간 tools visibility를 써서 무효화하세요 레이아웃 편집기는 환상적인 툴이고 안드로이드 스튜디오에서 사용이 가능합니다 다른 레이아웃 편집 요령이 있으시거나 자세히 알고 싶으시면 Google+커뮤니티에서 공유해주세요 안드로이드 스튜디오 데브바이트 시리즈의 다른 비디오도 확인해 보세요

Android Studio 入門【 画面分割① 】~均等分割~ ★★☆☆☆

3 분에서 배우는 Android Studio에서 화면 분할 ① 균등 분할입니다 이번 동영상도 시리즈 것으로 총 4 회에 RPG 스타일의 화면 제작을 공부합니다 RPG라고 말하는 것보다, 화면 분할 네요! 큰 이미지와 작은 이미지를 나란히 분할 네요 첫 번째 동영상은 "2 개의 이미지를 균등하게 표시하는"입니다 비교적 간단하기 때문에 바삭 바삭 수 있으면 좋을까 생각합니다 "가로 세로 화면 대응」이라고 써 있습니다 만 【스 마포】의 화면이 "수직 또는 수평에서도 나름대로 보이는 '만들기를 목표로합니다 수직 또는 수평으로 화면 크기가 달라도 나름대로 것 같아 먼저 이번 시리즈에서 사용되는 이미지를 저장합니다 하나씩 컴퓨터에 저장하십시오 적, 배경, 플레이어의 총 6 개 네요 저장이 끝나면 새에 들어가고 싶은 생각합니다 네, 그럼 "Start new Android Studio Project"를 선택하고 Application Name은 RpgGame "next"→ "next"→ "Empty Activity"→ "next"→ "Finish" 네, 새로운 응용 프로그램이있었습니다 이번에는 MainActivityjava는 사용하지 않습니다 activity_mainxml을 열고 미리보기도 열어주세요 오류가 발생 분은 템플릿 변경 이미지를 내장 것이 Project → app → src → main → res → drawable에 방금 저장 한 6 장의 이미지를 "ctrl + 드래그 드롭"으로 복사 이제 준비가되었습니다 사이트의 "레이아웃 해설"을 참조하십시오 완성형의 레이아웃을 설명하고 있습니다 이번에는 배경 이미지가 있고 캐릭터를 거듭에는 레이아웃이 복잡합니다

"RelativeLayout을 사용하면 중첩이 완화" 처음에는 RelativeLayout 위에 ImageView를 얹는다 배경 이미지의 것이군요 RelativeLayout에 배경 이미지를 얹어 또한 위에 싣는 형태로 LinearLayout을 얹는다 LinearLayout을 올리면 "이미지를 수직 배열」에 있습니다 좀 자세한 내용은 생략시켜줍니다 때문에 다양한 만져보세요 여기에서 보길 원하는 것은 레이아웃과 이미지 겹치기입니다 에서는 실제로 만들어갑니다 우선 배경 이미지의 표시입니다 첫 번째 TextView를 제거 대신 배경 이미지 ImageView 배치 세로도 가로도 match_parent 이미지 지정된 src는 "@ drawable / back" 이제 배경 이미지가 설정됩니다 여백을 제거합니다

RelativeLayout의 padding 제거에서 사라집니다 그리고는 ImageView 자체에 scaleType (표시 형식)을 지정합니다 centerCrop에서 빈틈없이 표시됩니다 여기에서 "Ctrl + Alt + L"로 정리합니다 디자인 탭에서 확인하면 RelativeLayout에 ImageView가 겹쳐 있습니다

떠 나머지 LinearLayout과 사진 2 배치 끝까지 진행하고자합니다 첫 번째 LinearLayout에 들어가는 곳은 ImageView와 RelativeLayout 사이를 줄로 표시 LinearLayout을 입력 세로도 가로도 match_parent <LinearLayout ~ 중략 ~> </ LinearLayout> 사이에 ImageView를 배치 몬스터 네요 몬스터의 높이도 가로도 match_parent src보기 이미지는 "@ drawable / m0" 이제 몬스터가 표시되었습니다 동일한 일을 다시 입력 대체로 완성 인데요 가로 세로, match_parent src는 "@ drawable / p0" 이제 거의 OK예요하지만, 불행히도 추가 한 플레이어가 표시되지 않습니다 이유는 "몬스터가 화면 가득 표시되어있는 '부터 플레이어는 화면에서 벗어나 있습니다

그것을 나타내는 것처럼 LinearLayout에 오류가 있습니다 "어떻게하면 좋을까?"라고 말하면 여기에 웨이트를 넣습니다 2 개의 ImageView에 w를 입력하면 layout_weight가 나오므로 숫자 1을 넣어 준다 플레이어에 android : layout_weight = "1"을 입력 이제 1 대 1로 표시됩니다 지금 일률적 인 것은 LinearLayout에 orientation가 설정되지 않은 때문 이지요

줄 바꿈하여 android : orientation = "vertical"를 입력 이제 세로 정렬됩니다 "Ctrl + Alt + L"에서 소스를 구성합니다 보고 싶지는 이미지에 붙인 match_parent와 weight입니다 사이트 하단에 그림이 있기 때문에, 그래서 설명합니다 2 개의 이미지에 match_parent, match_parent, weight⁼ "1" 로 설정하면 1 대 1로 표시됩니다

플레이어의 이미지를 코피 늘려 주어도 3 개의 이미지가 1 대 1 대 1로 표시되는 물론 4 가지로 늘려도 비율이 갖추어져 표시됩니다 깊이 생각하지 않고 "match_parent, match_parent, weight⁼"1 "로 비율을 지켜주는"으로 OK 반 암기으로 OK 네요 그러나 숫자를 바꾸면 잘 표시되지 않습니다 즉 "5 장 1 '등은 실패합니다 그 대처법은 다음의 동영상에서 설명합니다

에 만약 잘되지 않는 경우 사이트 XML을 복사하여 Android Studio에 붙여 넣기 1 대 1로 표시되는 것입니다 다음 동영상 2 체 1 등 비율을 바꿔보고자합니다

잘 부탁드립니다!

Improving Android Studio Performance on Memory-Constrained Machines

프레드 (FRED CHUNG) : 안녕하세요, 안드로이드 개발자 인 Fred입니다 관계 팀

Android Studio 개선에 대해 말씀 드리겠습니다 메모리가 제한된 컴퓨터의 성능 Android Studio에는 많은 기능 개발자가 함께 제공됩니다 현대 IDE에서 기대 예를 들어, lint 검사는 오류 식별에 도움이됩니다 편집기에서 소스 코드를 타이핑 할 때

이러한 개발자 생산성 기능 증가 된 자원 요구 사항을 의미합니다 호스트 운영 체제에서 실질적으로 복잡한 다중 모듈 작업을하는 개발자 프로덕션 프로젝트에는 일반적으로 8 기가 바이트 이상의 RAM이 있습니다 그러나, 간단한 프로젝트로 작업한다면 예를 들어 4 기가 바이트의 RAM이있는 메모리가 부족한 컴퓨터에서 또는 더 적은 것, 우리는 몇 가지 것들을 겪을 것입니다 개발 경험을 조금 더 부드럽게 만들 수 있습니다

최소 사양에 대한 명확한 답은 없습니다 Android Studio를 실행해야하므로 많은 요인 분명한 첫 번째 단계는 불필요한 애플리케이션을 닫는 것입니다 운영 체제에서 20 개의 웹 브라우저 탭을 열어 둔 사용자에게는 유감입니다

바이러스 백신 소프트웨어가 실행중인 사용자의 경우 컴퓨터에서 IDE에서 생성 한 빌드 파일 실시간 바이러스 검사를 실행할 수 있습니다 이것은 시스템 자원을 위해 경쟁합니다 가능하면 바이러스 스캐너 구성으로 이동하십시오 프로젝트 빌드 출력 디렉토리를 제외하십시오 Android Studio에는 기본 최대 Java 힙이 있습니다

크기는 12 기가 바이트입니다 컴퓨터의 메모리가 부족하면 그에 따라야합니다 기본 힙 크기를 512 메가 바이트 정도로 줄입니다 다음을 사용하여 원하는 값을 설정할 수 있습니다

studiovmoption 설정의 xmx 키 파일을 다운로드하십시오 이 값을 줄이면 지형지 물에 대한 자원의 양 축소 Android Studio 내에서 예를 들어, 레이아웃 편집기의 성능이 영향을받을 수 있습니다 이제 핵심 구성 요소 중 하나 인 Gradle에 대해 알아 보겠습니다 Android Studio에서 Gradle 및 Android의 최신 버전으로 업데이트 최신 성능 보장을위한 Gradle 용 플러그인 최적화는 프로젝트에서 사용할 수 있습니다

예를 들어 30에서는 점진적 패키징을 개선했습니다 AAPT2 여기에있는 스 니펫은 Android Studio 30 베타 버전

특정 설치된 버전은 다른 값 집합이 필요합니다 다음은 여러 기술에 대해 이야기하겠습니다 타락한 지원과 관련있다 최소한의 실행 만 남겨 둡니다 이러한 기술 중 일부는 코드 품질을 희생시키면서 성능을 향상시킬 수 있으며, 그래서 당신은 정말로주의해서 사용해야합니다

Android Studio는 절전 모드를 제공합니다 켜져 있으면 번호가 비활성화됩니다 린트 검사를 수행하는 백그라운드 작업, 코드 완료 등 너 한테 시간이있을거야 비활성화 된 작업을 수동으로 실행하려고합니다

예를 들어 린트 체크를하십시오 명령 줄을 통해 수동으로 실행할 수 있습니다 여기에 표시된대로 일부 사용자는 Android 에뮬레이터를 사용하고있을 수 있습니다 평균적으로 2 기가 바이트의 RAM을 소비합니다

가능한 경우 실제 Android 기기를 사용합니다 이렇게하면 컴퓨터의 리소스 부하를 줄일 수 있습니다 또는 에뮬레이터를 사용해야하는 경우, 에뮬레이트 된 RAM을 고려해보십시오 컴퓨터에서 가상 메모리 사용을 줄입니다 이 구성은 고급 설정에서 찾을 수 있습니다

가상 장치 구성에서 Gradle 오프라인 모드는 대역폭이 제한적인 사용자를위한 기능입니다 빌드 종속성 다운로드를 금지합니다 부작용으로이 문제가 개선 될 수 있습니다 낮은 RAM 머신에서의 성능 백그라운드 처리량을 줄입니다

Android Studio는 최적화를 제공합니다 여러 모듈을 병렬로 컴파일 할 수 있습니다 RAM이 적은 컴퓨터에서이 기능 성능에 부정적인 영향을 미칠 수 있습니다 컴파일러 설정 대화 상자에서 비활성화 할 수 있습니다 이 비디오가 당신에게 어떤 아이디어를 줄 수 있기를 바랍니다

낮은 RAM 환경에서 Android Studio를 미세 조정하는 방법 개발 경험을보다 원활하게 만들어줍니다 자세한 내용은 Android 개발자 사이트를 확인하십시오 지켜봐 줘서 고마워 [음악 재생]