我制作一个锁定屏幕应用程序,阻止其他人在锁定时访问该设备。我有一个名为锁屏活动的活动。这是代码:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Toast;
public class LockScreen extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.lockscreen);
}
protected void onPause() {
super.onPause();
// it will display a lock screen again when the home button is pressed
Intent myIntent = new Intent(LockScreen.this, LockScreen.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplication().startActivity(myIntent);
}
}
该代码用于在按下主页按钮时重新启动锁屏活动,以便设备仍然可以锁定。如果我按下主页按钮并且没有点击任何应用程序,它将在5秒内再次显示锁屏活动(基于android问题),但如果我点击任何应用程序(例如:设置或消息),我的锁屏活动将显示在我关闭该应用程序(设置或消息位于顶部并覆盖我的锁屏活动),因此仍然可以访问设备。 有没有人知道如何使活动保持在最佳状态,以尽量减少未经授权人员的访问?感谢..
答案 0 :(得分:2)
我不太确定是否有可能让应用程序始终保持最佳状态。当他们按下主页按钮时你打算做什么?或者,如果他们运行Cyanogen并按住后退按钮来“杀死”应用程序呢?这听起来不像是制作锁屏的有效方法。也许你可以看看其他一些类似的问题。我认为必须有更好的方法来实现锁屏应用程序。
Source of Android's lock screen
此链接告诉您如何在线查找Android源代码 Where can I find Android source code online?
这是LockScreen.java所在位置的实际链接 https://github.com/android/platform_frameworks_policies_base/blob/master/phone/com/android/internal/policy/impl/LockScreen.java
祝你好运!答案 1 :(得分:1)
我很久以前遇到过这个问题,然后我终于发现除非你修改框架,否则不可能这样做。