안드로이드 개발 중 가끔 다른 앱과 연동해야하는경우 !!!

그 앱이 설치 되어있는지 확인해야할 경우가있습니다.

그럴경우 이렇게 사용하세요

 

 

//패키지 매니저

  PackageManager pm = getPackageManager();
            try {
             //검색할 대상 패키지명
                 pm.getApplicationInfo("검색할 패키지명",PackageManager.GET_META_DATA);
                 }catch (Exception e)
                {
                 //패키지가 없을경우 실행할 내용
                 }

 

혹은

 

PackageManager mPm = getPackageManager();
List<android.content.pm.ApplicationInfo> mInstalledPkgList = mPm.getInstalledApplication(PackageManager.GET_UNINSTALLED_PACKAGES);
         for( android.content.pm.ApplicationInfo appFmc : mInstalledPkgList )
         {
            if(appFmc.packageName.equals("검색할 패키지명"))
             {//설치시
              Check = true;
             }
         }
         if(!Check)

  {
             //미설치시 
  }
   

키이벤트 다른것 찾다가 나중에 유용하게 쓰일것 같아서 가져왔습니다. ㅋ

=========================================================================================================


하드웨어 키를 누른 효과를 프로그래밍 내에서 인위적으로 발생시킨다. 


import android.app.Activity;

import android.app.Instrumentation;

import android.os.Bundle;

import android.os.Handler;

import android.view.KeyEvent;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;


public class Test extends Activity {

 

 /** Called when the activity is first created. */

 @Override

 public void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);


  setContentView(R.layout.main);

  Button btn = (Button) findViewById(R.id.btn);

  btn.setOnClickListener(new OnClickListener() {

   public void onClick(View v) {

    new Thread(new Runnable() {         

        public void run() {                 

            new Instrumentation().sendKeyDownUpSync(KeyEvent.KEYCODE_VOLUME_UP);

        }   

    }).start();

   }

  });

 }

}


[출처] Android KeyEvent 강제 발생 ( Instrumentation keyCode )|작성자 아즈라엘


안드로이드 드바이스 정보 보기

 

public class ModelNameTest extends Activity{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main); 
 Log.d("ModelNameTest", "BOARD: " + Build.BOARD);
        Log.e("Device Info", "BRAND: " + Build.BRAND);
        Log.e("Device Info", "CPU_ABI: " + Build.CPU_ABI);
        Log.e("Device Info", "DEVICE: " + Build.DEVICE);
        Log.e("Device Info", "DISPLAY: " + Build.DISPLAY);
        Log.e("Device Info", "FINGERPRINT: " + Build.FINGERPRINT);
        Log.e("Device Info", "HOST: " + Build.HOST);
        Log.e("Device Info", "ID: " + Build.ID);
        Log.e("Device Info", "MANUFACTURER: " + Build.MANUFACTURER);
        Log.e("Device Info", "MODEL: " + Build.MODEL);
        Log.e("Device Info", "PRODUCT: " + Build.PRODUCT);
        Log.e("Device Info", "TAGS: " + Build.TAGS);
        Log.e("Device Info", "TIME: " + Build.TIME);
        Log.e("Device Info", "TYPE: " + Build.TYPE);
        Log.e("Device Info", "USER: " + Build.USER);
    }
}