Android 응용 프로그램 켜기 자동 켜기 및 띄우기 상자 사용 권한 없음

4402 단어
전원 켜기 자동 켜기는 주로 사용자 정의 방송 수신 클래스를 사용하고 명세서 파일에 등록해야 하며 코드에 동적 등록하지 마십시오.
"android.permission.RECEIVE_BOOT_COMPLETED"/>
"android.permission.BROADCAST_STICKY"/>
".***">
     
          "android.intent.action.BOOT_COMPLETED"/>
          "android.intent.category.LAUNCHER"/>
     

".***"/>

브로드캐스트 수신기 작성을 시작합니다.
public class MyBroadcastRecevice extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")){
            // TODO: 2016/9/18
            context.startService(new Intent(context,***));
        }
    }
}

다시 한 번 서비스에서 부상 상자를 시작하는 코드를 보십시오:
/**
     *      
     */
    public void createFloatingBoxView() {
        wmParams = ((AppContext) getApplication()).getMywmParams();
        mWindowManager = (WindowManager) getApplication().getSystemService(
                Application.WINDOW_SERVICE);
        wmParams.type = WindowManager.LayoutParams.TYPE_TOAST;
        wmParams.format = PixelFormat.RGBA_8888;
        wmParams.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
                | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
                | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS;
        wmParams.gravity = Gravity.TOP | Gravity.LEFT;
        wmParams.x = 0;
        wmParams.y = 0;
        wmParams.width = WindowManager.LayoutParams.WRAP_CONTENT;
        wmParams.height = WindowManager.LayoutParams.WRAP_CONTENT;
        floatingBoxView = new FloatingBoxView(getApplicationContext(),this);
        mWindowManager.addView(floatingBoxView, wmParams);
        //
        floatingBoxView.setMoveListener(this);
        floatingBoxView.setAllClickListener(this);
    }

좋은 웹페이지 즐겨찾기