2012-08-28 28 views
1

当我启动android时,我希望屏幕自动解锁(并运行应用程序),而不是解锁屏幕。 任何人都可以告诉我内核源代码更改必须完成吗?android内核修改在启动时解锁屏幕


Java代码是在这里..你能请更正

public class AddnumsActivity extends BroadcastReceiver { 
    private static final String KEYGUARD_SERVICE = null; 
     @Override 
     public void onReceive(Context context, Intent intent) { 
      // TODO Auto-generated method stub 
      KeyguardManager keyguardManager = (KeyguardManager)context.getSystemService(Activity.KEYGUARD_SERVICE); 
      KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE); 
      lock.disableKeyguard(); 
      if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) { 
       Intent pushIntent = new Intent(context, AddnumsActivity.class); 
       pushIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       context.startActivity(pushIntent); 
      } 
     } 
    } 

回答

0

我不认为你需要做的这个内核的变化。所有你要做的就是创建一个启动完成Reciever和它禁用锁屏

KeyguardManager keyguardManager = KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE); 
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE); 
lock.disableKeyguard(); 

并添加以下权限

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/> 

和你的活性,这需要在启动时要显示的应该是主屏幕行动。使用下面的过滤器为您的活动

<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.HOME" /> 
<category android:name="android.intent.category.DEFAULT" /> 
</intent-filter> 
+0

这些变化必须完成?在应用程序中?我甚至想在屏幕自动解锁后启动应用程序 – johnsonpinto

+0

有一个adb命令来解锁屏幕“adb shell input keyevent 82” – johnsonpinto

+0

是的,在应用程序中,您需要立即启动的活动应该有意图过滤器如上所述 – nandeesh