�g�ݍ��@��ɁuAndroid�v��K�p����ꍇ�A�l�C�e�B�u�R�[�h�Ƃ̘A�g�͌������Ȃ��B�uAndroid NDK�v�ɂ��ĉ������
�@�O�͂������uAndroid���g�ݍ��݂Œ��ڂ����3�̗��R�v�ł́A�g�ѓd�b�����̃\�t�g�E�F�A�E�v���b�g�t�H�[���Ƃ��Ē���Ă���uAndroid�v���A�g�ѓd�b�ȊO�̑g�ݍ��݃f�o�C�X�E�v���b�g�t�H�[���Ƃ��Ē��ڂ���Ă��闝�R�ɂ��ĐG�ꂽ�B
�@�������A���Ƃ��ƌg�ѓd�b�����ɍ��ꂽAndroid���A���̂܂܌g�ѓd�b�ȊO�̑g�ݍ��݃f�o�C�X�ɓK�p���邱�Ƃ͓���B���܂��܂ȗp�r����Ӌ@�킪�l������g�ݍ��݃f�o�C�X��Android��K�p����ɂ́A�gAndroid���g���h����K�v������B
�@����ɁuAndroid�̊g���v�Ƃ����Ă��A�uDalvikVM�v��œ��삷��Android�A�v���P�[�V���������Ŏ����ł�����̂ł͂Ȃ��ALinux��̐�p�h���C�o��C�u�����A�f�[������Android�A�v���P�[�V�������f�[�^�����Ƃ肵�A������Linux��Android�A�v���P�[�V�����Ƃŕ��S�������K�v������B
�@�����ō���́A�l�C�e�B�u�R�[�h�Ƃ̘A�g���T�|�[�g���Ă���uAndroid NDK�iAndroid Native Development Kit�j�v�Ɋ܂܂��T���v���A�v���P�[�V�������g���āAAndroid�Ƀl�C�e�B�u�R�[�h���������A�uJNI�iJava Native Interface�j�i��1�j�v�ɂ��Android�̊g�����@�ɂ��ďЉ��B
�@�͂��߂ɁAAndroid���g�ѓd�b�ȊO�̑g�ݍ��݃f�o�C�X�ɓK�p����ۂɋ��߂���v�������Ă݂悤�B
�@�O�q�̂Ƃ���A�g�ѓd�b�ȊO�̑g�ݍ��݃f�o�C�X��Android��K�p����ꍇ�A���܂��܂Ȏ��Ӌ@��Ƃ̘A�g�A�܂�A�g�ݍ��݃f�o�C�X���Ƃ̌ŗL�@�\����������K�v������B�������������ɂ́ALinux���ɌŗL�̃h���C�o���K�v�ƂȂ�A����Android�A�v���P�[�V�����Ƃ̃f�[�^�̂��Ƃ�⏈���̕��S�Ȃǂ��s���K�v������B�Ȃ��A�����ł���Linux�̃h���C�o�͓��R�AJava�ɂ��L�q�ł͂Ȃ��AC�^C++�ŋL�q���ꂽ���̂��w���B
�@Linux�ō\������Ă���g�ݍ��݃f�o�C�X�ɁAAndroid��V���Ɏ������悤�Ƃ����ꍇ�A������Linux���Y�iC�^C++�Ŏ������ꂽ���̂������j��L�����p���A�J�����Ԃ�Z�k�������Ƃ����v�����o�Ă���B�������A�c���Linux���Y�����ׂ�Java�ֈڐA����ƂȂ�ƁA���ԁE�R�X�g�Ȃǔ��ɑ����̃��X�N������邱�ƂɂȂ�B���������v�������A�����X�N���������ɂ́A������Linux���Y��Android��Linux���œ��삳���āAAndroid�A�v���P�[�V�����Ƃ��܂��A�g������K�v������B
�@Android��œ��삷��A�v���P�[�V�����́A�ʏ�Java�ŋL�q���Ȃ���Ȃ�Ȃ����A�摜���Z�����̂悤�ȑ��x�����߂��郍�W�b�N�ɂ��ẮAC�^C++�Ŏ������������]�܂����ꍇ������B���̂悤�ȃp�t�H�[�}���X��K�v�Ƃ��鏈���Ȃǂ́AC�^C++�Ŏ������ꂽ������Linux���Y�Ƃ��đ������݂���B
�@�ȏ�A�u�@��ŗL�@�\�̎����v�u�J�����Ԃ̒Z�k�Ǝ��Y�̗L�����p�v�u�������v�̊ϓ_����AAndroid���g�ѓd�b�ȊO�̑g�ݍ��݃f�o�C�X�ɓK�p����ɂ́A�l�C�e�B�u�R�[�h�Ƃ̘A�g���K�{�ł��邱�Ƃ�������B
�@Android��Ńl�C�e�B�u�R�[�h�𗘗p����ɂ́AJNI��p����K�v������BJNI���g��Android�ŗL�̎d�g�݂ł͂Ȃ��A��ʓI��Java�̐��E�ōL�����p����Ă���B����JNI�𗘗p���邱�ƂŁAAndroid�A�v���P�[�V�����ł��l�C�e�B�u�R�[�h�Ƃ̘A�g�������ł���i�}1�j�B
�@�uAndroid 1.5 NDK�v�T���v���A�v���P�[�V�������ɁAJava�\�[�X�R�[�h��C-Native�\�[�X�R�[�h�Ƃ̊W���ȉ��ɋL���i�}2�j�B
�@Android NDK�Ƃ́AJNI���������邽�߂ɕK�v�ȃc�[���̏W���̂ł���BAndroid NDK�ɂ́AC�^C++�ŋL�q���ꂽ�\�[�X�R�[�h����Android�p�̃l�C�e�B�u�R�[�h���C�u�������쐬���邽�߂̊��A�l�C�e�B�u�R�[�h���܂ރA�v���P�[�V������z�z������@�A�l�C�e�B�u�̃V�X�e���w�b�_�E���C�u�����ƃh�L�������g�A�T���v���R�[�h���܂܂�Ă���B
�@�O�����Љ�����AAndroid NDK�����郉�C�u�����͈ȉ��̂Ƃ��肾�B
�@Android NDK�����郉�C�u�����́AARMv5TE�iARMv5 Thumb Enhance�j�Ɍ��肳��Ă���B���̂��߁A�ق���CPU��JNI�̃C���^�[�t�F�C�X�𗘗p����ꍇ�́A�Ǝ��Ɏ�������K�v������B
Copyright © ITmedia, Inc. All Rights Reserved.