我正在尝试创建系统覆盖图。但是我一直在“拒绝权限”。我正在使用SDK版本23。
我的清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test" >
<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".activity.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
我用来创建叠加层的代码:
//mView = new HUDView(this);
mButton = new Button(this);
mButton.setText("Overlay button");
mButton.setOnTouchListener(this);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH,
PixelFormat.TRANSLUCENT);
params.gravity = Gravity.RIGHT | Gravity.TOP;
params.setTitle("Load Average");
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
wm.addView(mButton, params);
首先,没有名为的权限SYSTEM_OVERLAY_WINDOW
。是的SYSTEM_ALERT_WINDOW
。
其次,如果您的targetSdkVersion
年龄为23岁或更高,并且您正在运行Android
6.0+设备,则您的应用一开始将不会获得此权限。致电Settings.canDrawOverlays()
查看您是否具有权限,如果没有,则用于ACTION_MANAGE_OVERLAY_PERMISSION
将用户引导到“设置”。
问题内容: 在android 4.0之前,您可以使用TYPE_SYSTEM_OVERLAY创建并覆盖任何应用程序,并通过FLAG_WATCH_OUTSIDE_TOUCH获取触摸…现在,在android 4中,您无法接收触摸。 基本上,这个想法就是遵循这个应用程序的,即 http://www.appbrain.com/app/smart- taskbar-%28sidebar%29/com.smar
我正在尝试学习windows上的opengl编程,虽然我最初是从SDL开始的,但我已经决定放弃它,以便学习如何使用WGL自己启动OpenGL上下文。 我使用nanovg作为一个快速的图形绘制库,用SDL渲染一切都很好,但是,现在我已经移除了SDL,创建了我自己的窗口和OpenGL上下文,我发现窗口的标题栏与渲染区域重叠了。好像渲染区域的原点(0,0)在整个窗口的左上方,而不是标题栏的正下方,如果这
我把另一个项目放在我的主项目中,这个项目叫做OAuthSwift,它包含了一个框架。当我试图构建它时,我得到了这个错误: :0:错误:无效的虚拟文件系统覆盖文件“/users/gabrieljones/library/developer/xcode/deriveddata/paul”的_console-bbbxnfmomaaurfeabxmnchoqmwpa/build/intermediates
宏碁Iconia a500平板电脑:10英寸:Android OS-3.0 宏碁Iconia a500平板电脑:10英寸:Android OS-3.2 三星Galaxy标签:10英寸:Android OS-4.0 三星Galaxy标签:7英寸:Android OS-4.0 模拟器:Skin-WVGA800:Android OS-4.1.2 不在以下设备上工作: 三星Galaxy标签:10英寸:An
我正在寻找一些关于渲染子窗口的信息,特别是关于OpenGL如何与GDI互操作的信息。我的问题是,我基本上有两个窗口,首先,主窗口是在qt中创建的,而在qt内部,子窗口是利用OpenGL渲染器托管的。 现在我想做的是在我的OpenGL窗口顶部托管一个覆盖,所以我用它来覆盖OpenGL窗口。我遇到的问题是,当我使用OpenGL渲染时,OpenGL生成的图形似乎模糊了图形区域,包括并有效地撤消了由qt合
问题内容: 我正在尝试为外部应用程序创建HUD样式显示。 为此,我需要创建一个透明的叠加窗口,该窗口将位于外部应用程序窗口的顶部。覆盖窗口应允许我放置小部件并在其上绘制文本。如果事件发生在透明区域上,则事件应该转发到基础窗口(否则,使窗口小部件可以按预期工作)。 我正在使用Java的OSX上执行此操作。我希望可以使用纯Java来实现此目的,并且可以移植到其他平台,但如果不可能的话,我会选择可以通过