Skip to main content

[배포] 안드로이드에서 특정기기에만 배포하기

안드로이드 개발 완료 후 갤럭시 노트 시리즈에만 배포해야할 일이 생겼습니다.

다음은 특별한 설정없이 기본적으로 기기의 permission 또는 버전으로 필터링된 경우의 “지원되는 기기”입니다.

이전에는 각각의 모델을 제조사 또는 기기모델별로 한번에 해제 하는게 있었던거 같은데 -_- 하나하나 클릭하기도 힘들어보이고

특정한 모델에만 배포해야 할 경우 Google Play Console에서 모든 기기의 체크박스를 해제 해야하는 경우가 생깁니다.

(하나하나 체크 해제 하는건 너무 무모한거 같에요 ㅋㅋㅋ)

 

이런 경우 앱의 AndroidManifest.xml을 수정하여 출시되는 기기에 대한 필터링을 걸 수 있습니다.

해당기기를 Play Console의 기기 카탈로그에서 검색해봅니다.

 

그리고 해당기기(노트 시리즈)에 특정한 기능을 확인합니다.  s-pen의 기능은 com.sec.feature.spen_usp 입니다.

(얼굴 관련된것도 보이고 카메라 등등 여러가지가 있습니다. 다 뭐하는건진 모르겠지만요 -ㅅ-… )

 

해당하는 기능을 확인했으니  AndroidManifest.xml를 편집해봅시다.

 
 <uses-feature android:name="com.sec.feature.spen_usp" android:required="true"/>

이렇게 추가하고 빌드 후 APK를 다시 업로드 해봅니다.

 

 

 

그러면 해당 기기만 배포할 수 있습니다.

 

라이브러리가 없어서 오류가 나거나 하진 않겠죠 ^^

 

(오랜만에 글을 적었네요 -_- )

3자리마다 콤마를 찍어주는 플러그인

이 플러그인도 jquery용입니다.

별도의 파일로 만들어서 script src로 불러다 쓰시면 편리합니다.

몇가지 타입이 있는데요… 통합할려다가 그때 그때 필요한 것을 추가하다보니 함수가 3개나 되었네요 -_-

$(function($){

    //NumberFormat -_-a 딱히 이름이 안 떠오름
    // 3자리 마다 콤마를 찍어줌
    $.DNumberFormat = function(value) {
        var data = value + "";
        var arrResult = data.split("");
        var startIndex = arrResult.length - 3;
        for (var i = startIndex; i > 0; i -= 3) {
            arrResult.splice(i, 0, ","); // 0은 기존 배열을 삭제하지 않고 삽입만 하겠다는 의미
        }
        return arrResult.join(''); // 공백없이 문자열로 변환
    };



    //객체를 지정해서 찍는것도 ...
    $.fn.DNumberFormatInput = function() {
        var value = $(this).val();

        var data = value + "";
        var arrResult = data.split("");
        var startIndex = arrResult.length - 3;
        for (var i = startIndex; i > 0; i -= 3) {
            arrResult.splice(i, 0, ","); // 0은 기존 배열을 삭제하지 않고 삽입만 하겠다는 의미
        }
        $(this).val(arrResult.join('')); // 공백없이 문자열로 변환
    };

    //html용 (try_catch가 필요할듯...)
    $.fn.DNumberFormatHtml = function() {
        var value = $(this).html();

        var data = value + "";
        var arrResult = data.split("");
        var startIndex = arrResult.length - 3;
        for (var i = startIndex; i > 0; i -= 3) {
            arrResult.splice(i, 0, ","); // 0은 기존 배열을 삭제하지 않고 삽입만 하겠다는 의미
        }
        $(this).html(arrResult.join('')); // 공백없이 문자열로 변환
    };

});

사용하는 방법은 여타의 플러그인들과 마찬가지로 …

$("#객체").DNumberFormat();

 

용도에 따라 함수를 바꿔주면 됩니다. …

(누군가 하나로 통합해줬으면.. -ㅅ- .. 내가 잘쓸텐데…   class도 처리되게 해줬으면….  )

 

…. 이라고 하기에 누가 만들어 놓지 않았을까요 -ㅅ-)!!

HTML DOM 요소를 섞어 주는 플러그인?

jquery를 이용하여 객체를 랜덤으로 출력할 일이 있어서 만들어 보았습니다.

(만든게 아닌가 -_- 어딘가 스텍에서 따온건가 …  가물가물하군욥… 어쨌든 잘 쓰고 있습니다.)

 

당연한 이야기지만 jquery를 불러놓고 써야합니다.

 

(function($){

    $.fn.DShuffle = function() {

        var allElems = this.get(),
            getRandom = function(max) {
                return Math.floor(Math.random() * max);
            },
            shuffled = $.map(allElems, function(){
                var random = getRandom(allElems.length),
                    randEl = $(allElems[random]).clone(true)[0];
                allElems.splice(random, 1);
                return randEl;
            });

        this.each(function(i){
            $(this).replaceWith($(shuffled[i]));
        });

        return $(shuffled);

    };

})(jQuery);

 

사용법은….

$('ul#list li').shuffle();

블로그 오류 수정중

라즈베리 파이에 APM을 설치하고 블로그를 올려보았다.

PHP 5대에서 돌아가던 소스들이 7로 넘어오면서 많은 문제를 일으키는듯…

특히 테마쪽에 문제와 code highlight문제가 많았음….

원래 쓰던 테마를 좀 고치긴했지만 … 어떤 문제가 있을진 모르겠다…..

<?php
//코드 하이러이터 테스트
Class info {
    static function php(){
         phpinfo();
    }
}

info::php();
?>

mariadb가 또 난리다. -_- 그냥 설정상의 문제인듯 innodb와 mariadb가 좀 안맞는다는 느낌이 있다.

에고… os와 환경이 바껴서 그런가 …