반응형
반응형

안드로이드 갤럭시 개발자옵션 개발자모드 usb 디버깅 모드

 

 


Android 9(API 수준 28) 이상: 설정 > 휴대전화 정보 > 빌드 번호

Android 8.0.0(API 레벨 26) 및 Android 8.1.0(API 레벨 26): 설정 > 시스템 > 휴대전화 정보 > 빌드 번호

Android 7.1(API 수준 25) 이하: 설정 > 휴대전화 정보 > 빌드 번호


1.빌드번호 부분을 7번 반복적으로 누르기

2. 설정 > 개발자 옵션 > USB 디버깅 허용 선택

반응형
반응형

안드로이드 ADID 확인

설정 > 개인정보보호 > 광고

---------------

반응형
반응형

구글, 안드로이드11 첫 베타 공개


구글이 안드로이드11 베타를 처음 공개했다. 6월 10일(현지시간) <테크크런치>는 구글의 레퍼런스 단말기인 픽셀2, 3, 3a, 4 등에 이 신규 베타를 설치해 체험해볼 수 있다고 전했다.
구글은 안드로이드11에 대한 세 가지 키워드로 사람(People), 조정(Control), 사생활 보호(Privacy) 등을 꼽았다.
우선 알림 기능을 개선해 모바일 메시지를 알림 미리보기 창에서 확대해 볼 수 있도록 했다. 또 로그인 정보를 자동저장해 입력해주는 ‘오토필'(Autofill) 앱 등을 지원하면서 보안성을 높이는데 주력했고, 음성으로 스마트홈 기기를 제어할 수 있는 기능도 추가했다. 이외에 5G(5세대 이동통신) 활용 극대화 등도 언급했다.
구글은 이와 함께 자바 지원 등을 강조하며 개발자 도구 ‘안드로이드 스튜디오’ 역시 업데이트했다. 기계학습(ML) 역시 별도 발표를 통해 관련 도구와 텐서플로우 라이트 모델을 IDE에 포함시키는 내용 등을 전했다

반응형
반응형

WindowChangeDetect extends AccessibilityService

메니페스트 파일(xml)에 서비스 클래스명 등록 필수

https://jungwoon.github.io/android/2016/10/03/Accessibility-Service/

 

Accessibility Service 사용방법 - Jungwoon Blog

안드로이드 접근성 서비스를 이용하는 방법 설정해야하는 순서 android.accessibilityservice.AccessibilityService에서 상속받는 클래스 만들기 AndroidManifest.xml에 접근성 서비스 등록하기 res/xml/accessibility_service_config.xml 만들기 res/values/strings.xml 에 accessibility_description 추가하기 MainActivity 해당 앱의 패키지

jungwoon.github.io

https://github.com/Jungwoon/AccessibilityService

 

Jungwoon/AccessibilityService

Contribute to Jungwoon/AccessibilityService development by creating an account on GitHub.

github.com

https://pluu.github.io/blog/android/droidkaigi/2017/10/20/droidkaigi-2017-AccessibilityService/

 

Pluu Dev - [번역] DroidKaigi 2017 ~ AccessibilityService 를 사용해 앱의 가능성을 넓히자

Android Studio Tips #2 Posted on 24 Jul 2019 Android Studio Tips #1 Posted on 13 Jul 2019 [요약] Android Studio/ Tips and Tricks Part 3 ~ Build&Deploy (Google I/O '19) Posted on 07 Jul 2019 [요약] Android Studio/ Tips and Tricks Part 2 ~ Navigation Editor, Res

pluu.github.io

https://jinhobak.tistory.com/428

 

AccessibilityService 예제

설정에서 접근성을 체크하면 터치, 키보드 입력 등의 다양한 이벤트를 수신할 수 있다. - 노티 영역에 수집되는 정보를 추출 가능 (카톡 등과 같은 메신저 미리보기 서비스 이용하여 메시지 캐치가 가능) - 검색어..

jinhobak.tistory.com

 

반응형
반응형

안드로이드 : 웹뷰 404 에러처리

WebView.setWebViewClient(new WebViewClient() {
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}

@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
super.onReceivedError(view, errorCode, description, failingUrl);

switch (errorCode) {
case ERROR_AUTHENTICATION: // 서버에서 사용자 인증 실패
case ERROR_BAD_URL: // 잘못된 URL
case ERROR_CONNECT: // 서버로 연결 실패
case ERROR_FAILED_SSL_HANDSHAKE: // SSL handshake 수행 실패
case ERROR_FILE: // 일반 파일 오류
case ERROR_FILE_NOT_FOUND: // 파일을 찾을 수 없습니다
case ERROR_HOST_LOOKUP: // 서버 또는 프록시 호스트 이름 조회 실패
case ERROR_IO: // 서버에서 읽거나 서버로 쓰기 실패
case ERROR_PROXY_AUTHENTICATION: // 프록시에서 사용자 인증 실패
case ERROR_REDIRECT_LOOP: // 너무 많은 리디렉션
case ERROR_TIMEOUT: // 연결 시간 초과
case ERROR_TOO_MANY_REQUESTS: // 페이지 로드중 너무 많은 요청 발생
case ERROR_UNKNOWN: // 일반 오류
case ERROR_UNSUPPORTED_AUTH_SCHEME: // 지원되지 않는 인증 체계
case ERROR_UNSUPPORTED_SCHEME:
WebView.loadUrl("about:blank"); // 빈페이지 출력
AlertDialog.Builder builder = new AlertDialog.Builder(MyView.this);
builder.setPositiveButton("확인", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {

// 확인버튼 클릭시 이벤트

}});
builder.setMessage("네트워크 상태가 원활하지 않습니다. 어플을 종료합니다.");
// builder.setMessage("네트워크 상태가 원활하지 않습니다. 페이지를 이동합니다.");
builder.setCancelable(false); // 뒤로가기 버튼 차단
builder.show(); // 다이얼로그실행
break;
}}});
반응형
반응형

하이브리드앱, 웹뷰(WebView) 설정하기 - 안드로이드

안드로이드 스튜디오 설치하고.  https://developer.android.com/studio/

AndroidManifest.xml

// 인터넷 사용할꺼야 라고 선언
<uses-permission android:name="android.permission.INTERNET" />

layout.xml 

//웹뷰 등록 html로 비교하면 iframe 과 비슷하겠네요.
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"></WebView>

Java

private WebView mWebView; //웹뷰
private WebSettings mWebSettings; //웹뷰세팅

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

     // 웹뷰 세팅
     mWebView = (WebView)findViewById(R.id.webview); //레이어와 연결
     mWebView .setWebViewClient(new WebViewClient()); // 클릭시 새창 안뜨게
     mWebSettings = mWebView.getSettings(); //세부 세팅 등록
     mWebSettings.setJavaScriptEnabled(true); // 자바스크립트 사용 허용

     mWebView.loadUrl("http://m.nate.com"); //원하는 URL  입력
}

 


웹뷰 기본 옵션
mWebView.goBack(); //뒤로가기
mWebView.goForward(); //앞으로가기
mWebView.reload(); //새로고침

mWebView.clearCache(true); // 캐시 지우기
mWebView.reload(); // 현재 웹뷰 새로고침
mWebView.stopLoading(); // 로딩 중단

//스크롤 없애기
mWebView.setVerticalScrollBarEnabled(false);
mWebView.setHorizontalScrollBarEnabled(false);


웹뷰 세부 옵션

wvs = mWebView.getSettings();

wvs .setWebViewClient(new WebViewClient()); // 클릭시 새창 안뜨게
wvs .setJavaScriptEnabled(true); //자바스크립트 사용

wvs .setWebChromeClient(new webViewChrome()); // alert 경고창 사용

//화면 비율 관련 - 안드로이드 TV셋탑에서 웹뷰 사용할때 웹페이지 viewport가 적용안되서.
wvs .setUseWideViewPort(true); //wide viewport를 사용하도록 설정
wvs.setLoadWithOverviewMode(true); // 컨텐츠가 웹뷰보다 클 경우 스크린 크기에 맞게 조정
wvs.setInitialScale(35); //비율 조절
wvs.setDefaultFontSize(8); // 기본 폰트 사이즈 지정
wvs.setMinimumFontSize(8); //폰트 사이즈 지정

//웹뷰 멀티 터치 가능하게 (줌기능)
wvs .getSettings().setBuiltInZoomControls(true); //줌 아이콘 사용 설정
wvs .getSettings().setSupportZoom(false);

wvs .setPluginState(WebSettings.PluginState.ON_DEMAND); // 플러그인을 사용 설정
wvs .setCacheMode(WebSettings.LOAD_NO_CACHE); // 웹뷰가 캐시를 사용하지 않도록 설정

wvs .setDefaultZoom(WebSettings.ZoomDensity.FAR); // 페이지 크기 자동 조절?

뒤로 가기 버튼
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
        mWebView.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}


webViewExampleSettings.setSaveFormData(true);  입력된 데이터 저장 여부
webViewExampleSettings.setSavePassword(true);  입력된 비밀번호 저장 여부

 

반응형

+ Recent posts