【问题标题】:How to make activity always on top on android?如何使活动始终在android上处于领先地位?
【发布时间】:2011-11-28 21:19:38
【问题描述】:

我制作了一个锁屏应用程序,以防止其他人在设备被锁定时访问它。我有一个称为锁屏活动的活动。这是代码:

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 问题),但如果我点击任何应用程序(例如:设置或消息),我的锁屏活动将在之后显示我关闭了该应用程序(设置或消息在顶部并覆盖了我的锁屏活动),因此仍然可以访问该设备。 有谁知道如何使活动保持领先以最大程度地减少未经授权的人的访问?谢谢..

【问题讨论】:

    标签: java android android-layout android-manifest


    【解决方案1】:

    我不太确定是否有可能让应用始终保持领先地位。当他们按下主页按钮时你会做什么?或者如果他们运行 Cyanogen 并按住后退按钮“杀死”应用程序怎么办?这听起来不像是制作锁屏的有效方法。也许你可以看看其他一些有点相似的问题。我只是认为必须有更好的方法来实现锁屏应用。

    Source of Android's lock screen

    这个链接告诉你如何在网上找到安卓源代码 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

    祝你好运!

    【讨论】:

      【解决方案2】:

      这个问题我很早以前就遇到过,后来我发现除非你修改框架是不可能的。

      【讨论】:

        猜你喜欢
        • 2011-12-28
        • 2010-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-17
        • 1970-01-01
        • 2016-09-19
        • 2011-11-13
        相关资源
        最近更新 更多