android - 如何在锁屏上显示您的应用程序?

标签 android

Android Studio 1.3 Preview 5

你好,

我想在用户锁定屏幕上显示我的应用程序的图标。例如,就像您有相机应用程序快捷方式一样。我想为我的应用程序做同样的事情。因此,用户将单击或拖动应用程序图标,应用程序将打开。

list 中的 activity 元素下有一个属性,我认为应该可以工作。但是,当我在运行 Kitkat 4.4.2 的三星上安装我的应用程序时,它不起作用(API 17 或更高版本)。

android:showOnLockScreen="true"

在以下在线文档中我看不到此属性:

http://developer.android.com/guide/topics/manifest/activity-element.html

只是想知道这是否可能。

非常感谢您的建议,

最佳答案

这是我想出的方法。当您的应用程序检测到当前处于锁定屏幕时,请使用以下代码 fragment 将您的应用程序图标添加到屏幕。

WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
    WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
    lp.width = WindowManager.LayoutParams.WRAP_CONTENT;
    lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
    lp.gravity = Gravity.CENTER;
    lp.type = WindowManager.LayoutParams.TYPE_SYSTEM_ERROR;
    lp.format = PixelFormat.TRANSLUCENT;
    lp.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
    ImageView image = new ImageView(this);
    image.setImageResource(R.mipmap.ic_launcher);
    image.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            // Do something here
        }
    });
    wm.addView(image, lp);

在 list 中声明此权限:

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

关于android - 如何在锁屏上显示您的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30972660/

相关文章:

android - 如何将虚假时间提供给 Android 应用程序?

java - Android 自动短信回复电话功能不起作用

android - 当用户点击它时用动画改变背景

java - 无法使用 try-catch 捕获 Java (Android) 异常

Android Fragment 返回不起作用,setDisplayHomeAsUpEnabled(true)setHomeButtonEnabled(true);

java - Firebase:无法将 java.lang.Boolean 类型的值转换为字符串

java - HttpURLConnection 应用程序因 ESP8266 而崩溃

Android:如何将一个 Activity 分为两个单独的 Activity ?

java - Android - 光标结果搜索字符串错误,需要搜索 DISPLAY_NAME 进行匹配

java - AsyncTask 与嵌套类的数据通信