static Typeface FileStreamTypeface(Context context, int resource) { Typeface tf = null; InputStream is = context.getResources().openRawResource(resource); try { File outputDir = context.getCacheDir(); // context being the Activity pointer File outputFile = File.createTempFile("tmp", ".raw", outputDir); String outPath = outputFile.getAbsolutePath(); byte[] buffer = new byte[is.available()]; Buffe..
안드로이드에서 TXT파일을 처리하다보면 EUC-KR 파일을 처리할때가 있다. 그럴때는 다음과 같이 UniversalDetector를 쓰면 되는데 gradle에 먼저 다음과 같이 추가해 주어야 한다. //encoding compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3' 그리고 다음과 같이 프로그래밍 하면 텍스트 파일 내용을 UTF-8 자바 문자열로 얻을 수 있다.File file = new File(path);FileInputStream is = new FileInputStream(file); UniversalDetector detector = new UniversalDetector(null);byte[] buffer = new byte..
유니티3D에서는 원래 C#기반으로 Assembly-CSharp.dll가 게임코드가 Android로 익스포트가 된다.그런데 이는 C# IL코드라서 자바 jar과 마찬가지로 디스어셈블이 되어서 해킹이 당할 가능성이 있다.그래서 C#을 C++언어로 변환하여 so파일로 게임코드를 변환해주는 기능을 하는게 Unity3D IL2CPP 기능이다. 1. Android NDK r10e 다운로드 http://dl.google.com/android/ndk/android-ndk-r10e-windows-x86_64.exe 2. Edit - Preference - External Tools - NDK r10e 폴더 셋팅 3. Edit - Project Setting - PlayerScripting Backend - Mono 2x..
public class UnitConverter { public static int dpToPx(int dp) { return (int) (dp * Resources.getSystem().getDisplayMetrics().density); } public static int pxToDp(int px) { return (int) (px / Resources.getSystem().getDisplayMetrics().density); }} public class RoundedImageView extends ImageView { public RoundedImageView(Context context) { super(context); } public RoundedImageView(Context context, ..
private Bitmap getThumbnail(String path) { Cursor cursor = context.getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, new String[]{MediaStore.MediaColumns._ID}, MediaStore.MediaColumns.DATA + "=?", new String[]{path}, null); if (cursor != null && cursor.moveToFirst()) { int id = cursor.getInt(cursor.getColumnIndex(MediaStore.MediaColumns._ID)); cursor.close(); return MediaS..
이전에 iOS와 PHP로도 인앱 구매 영수증 서버 검증을 진행했는데 이번에는 Android에도 적용해 보자. 일단 플레이스토어에 가면 다음과 같이 [서비스 및 API] > [라이센스 및 인앱 결제] 항목에 Base64 인코딩된 RSA 공개키가 있다. 이것을 .pem형식으로 다음과 같이 저장한다. 물론 PHP의 chunk_split함수를 이용해도 된다. 단, 설명문에 RSA 공개키라고 하더라도 반드시 그냥 PUBLIC KEY라고 입력해야 한다. -----BEGIN PUBLIC KEY----- 한 줄에 64바이트씩 잘라서 입력 -----END PUBLIC KEY----- 다음은 안드로이드에서 구매후 $signature와 $data를 보내줘야 한다. 주의할 사항은 $data는 original json을 그대로..
NDK를 사용할때 JNI라는 폴더가 있으면 다음과 같이 최신의 experimental plugin을 사용하라고 에러메세지가 뜬다. Error:Execution failed for task ':imagefilter:compileReleaseNdk'. > Error: NDK integration is deprecated in the current plugin. Consider trying the new experimental plugin. For details, see http://tools.android.com/tech-docs/new-build-system/gradle-experimental. Set "android.useDeprecatedNdk=true" in gradle.properties to co..
FilterScript Introduced in Android 4.2 (API Level 17), Filterscript defines a subset of Renderscript that focuses on image processing operations, such as those that you would typically write with an OpenGL ES fragment shader.현재 android developer의 renderscript 항목에는 기본적으로 filterscript를 사용하기를 설명하고 있다.http://developer.android.com/guide/topics/renderscript/compute.htmlUsage Inputs and return values o..
- Total
- Today
- Yesterday