[위미르 개발팀] Android, iOS , Web 제작
안드로이드 스튜디오에서 Gradle을 이용하여 라이브러리를 추가하다보면Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536또는trouble writing output: Too many field references: 131000; max is 65536. You may try using --multi-dex option.와 같은 에러로 인해 빌드가 불가능한 상황을 맞게 됩니다. 이럴때는 multidex를 사용하면 65536개가 넘는 메소드를 사용할수 있습니다. 먼저 app.gradle을 열어주세요 그런다음 defaultConfig에 multiDexEnabled true를 추가합니다. and..
현재 보여지고있는 최상위 프래그먼트를 구하는 방법입니다 for (Fragment fragment: getSupportFragmentManager().getFragments()) { if (fragment.isVisible()) { //할일 } } FragmentManager에서 모든 프래그먼트를 구한다음 해당 프래그먼트가 보여지고 있는지 확인 합니다. 그리고 해당 프래그먼트가 무엇인지에 따라서 작업을 할때는 다음과 같이 확인 할수 있습니다. for (Fragment fragment: getSupportFragmentManager().getFragments()) { if (fragment.isVisible()) { if(fragment instanceof 프래그먼트클래스){ //할일 } } }Fragmen..
특정 키를 눌러서 이벤트를 발생시킬때 Form의 이벤트에서 KeyDown을 찾아서 private void Form_KeyDown(object sender, KeyEventArgs e) { if(e.KeyCode == Keys.Escape) { this.Close(); } } 이러한 코드를 작성하면 될것이라는 생각을 하기 쉽습니다. 하지만 이코드는 원하는대로 작동하지 않습니다. 우리가 원하는대로 작동하게 하려면 해당 폼의 클래스에서 ProcessCmdKey를 오버라이딩 해야합니다. protected override bool ProcessCmdKey(ref Message msg, Keys keyData){ if(keyData == Keys.Escape) { this.Close(); return true; }..
각종 API를 사용하다보면 인증서 키를 요구하는 경우가 있습니다. 릴리즈버전의 apk와 디버그용 apk는 서로 이 값들이 다르기 때문에 두 환경에서 모두 작동하게 하려면 두가지 모두 등록을 해주어야 정상적으로 디버깅과 릴리즈가 가능합니다. 터미널에서 커맨드로 이것들을 확인하기에는 디버그버전의 경우 경로도 잘 모르겠고 불편이 이만저만이 아닙니다. 하지만 안드로이드 스튜디오에서는 이것을 그러한 작업없이 바로 볼수가 있는데 안드로이드 스튜디오에서 Gradle 탭을 찾아주세요 이 탭의 위치는 개인마다 배치한 위치가 다를수가 있으니 왼쪽 탐색기 부분과 모두 살펴 보세요 이 탭을 열어보시면 이러한것들이 나오는데 제가 열어놓은 경로를 그대로 타고 가서 signingReport를 더블 클릭 해보시면 위와 같이 MD5와..