import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
private static String md5hash(String input)
{
String md5 = null;
if(null == input) return null;
try {
//Create MessageDigest object for MD5
MessageDigest digest = MessageDigest.getInstance("MD5");
//Update input string in message digest
digest.update(input.getBytes(), 0, input.length());
//Converts message digest value in base 16 (hex)
md5 = new BigInteger(1, digest.digest()).toString(16).toUpperCase();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return md5;
}
2012년 12월 12일 수요일
BigInteger를 이용한 md5 함수
MessageDigest와 BigInteger를 이용하는 MD5 해시함수
MD5 hash function using MessageDigest and BigInteger
2012년 11월 14일 수요일
Contacts 와 ContactsContract
예전 코드를 사용하면, 이클립스가 자동으로 줄을 긋는다.
예전 API
android/provider/Contacts.Phones.CONTENT_URI
android/provider/Contacts.ContactMethods.CONTENT_URI
android/provider/Contacts.Groups.CONTENT_URI
android/provider/Contacts.GroupMembership.CONTENT_URI
android/provider/Contacts.People.CONTENT_URI
android/provider/Contacts.Phones.CONTENT_URI
android/provider/Contacts.ContactMethods.CONTENT_URI
android/provider/Contacts.People.CONTENT_URI
변경된 API (Android 2.0.1 부터)
android/provider/ContactsContract.Data.CONTENT_URI
android/provider/ContactsContract.Contacts.CONTENT_URI
android/provider/ContactsContract.Groups.CONTENT_URI
android/provider/ContactsContract.CommonDataKinds.Phone.CONTENT_URI
android/provider/ContactsContract.CommonDataKinds.Email.CONTENT_URI
EditText on SurfaceView problem
Q : SurfaceView나 GLSurfaceView위에 안드로이드 표준 위젯을 올려놓을 경우, EditText를 빠져나올때 화면에서 지워져 버리는 문제
A : mSurfaceView.setBackgroundColor(Color.TRANSPARENT);
출처 : http://stackoverflow.com/questions/2978290/androids-edittext-is-hidden-when-the-virtual-keyboard-is-shown-and-a-surfacevie
A : mSurfaceView.setBackgroundColor(Color.TRANSPARENT);
출처 : http://stackoverflow.com/questions/2978290/androids-edittext-is-hidden-when-the-virtual-keyboard-is-shown-and-a-surfacevie
Android 전화번호부 이름과 전화번오 얻어오기
안드로이드 전화번호부 이름과 전화번호 얻어오기
최근 안드로이드 버전에서 ContactsContract.CommonDataKinds.Phone로 바뀐부분을 적용했다.
string의 ArrayList를 파라미터로 받아 오도록 제작.
private void getContacts(ArrayList<String> alist)
{
String [] arrProjection = { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME };
String [] arrPhoneProjection = { ContactsContract.CommonDataKinds.Phone.NUMBER };
Cursor clsCursor = getContentResolver().query( ContactsContract.Contacts.CONTENT_URI, arrProjection, ContactsContract.Contacts.HAS_PHONE_NUMBER + "=1" , null, null );
while( clsCursor.moveToNext() )
{
String strContactId = clsCursor.getString( 0 );
Cursor clsPhoneCursor = getContentResolver().query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, arrPhoneProjection, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + strContactId, null, null );
while( clsPhoneCursor.moveToNext() )
{
alist.add(clsCursor.getString( 1 ) + ":" + clsPhoneCursor.getString( 0 ));
}
clsPhoneCursor.close();
}
clsCursor.close( );
}
위 함수를 사용할 때에는 다음과 같이, Adaptor를 이용하여 ListView에 보여주도록 해 보았다.
ListView list = (ListView) findViewById(R.id.listview1);
final ArrayList<String> arr = new ArrayList<String>();
getContacts(arr);
final ArrayAdapter<String> aa = new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1, arr);
list.setAdapter(aa);
피드 구독하기:
덧글 (Atom)
