我从哪里开始?
我不知道将使用哪些功能或权限来实现此功能。 不需要root。
视图看起来像这样,右侧的相机按钮,它是浮动的并且对其他应用程序可见,如果您按下它,它将捕获屏幕截图。
注意:我不会制作截图应用,这只是我想要实现的一个例子。
答案 0 :(得分:10)
这叫做
绘制其他应用
检查这些答案
"DRAW OVER OTHER APP" is which permission in android
How to draw a view on top of everything?
(来自Morrison Chang) What APIs in Android is Facebook using to create Chat Heads?
答案 1 :(得分:1)
试试这个:
if(!isSystemAlertPermissionGranted(MainActivity.this)){
requestSystemAlertPermission(MainActivity.this,1);
}
startService(new Intent(getApplicationContext(), Overlay.class));
和
public static void requestSystemAlertPermission(Activity context, int requestCode) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M)
return;
final String packageName = context == null ? context.getPackageName() : context.getPackageName();
final Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + packageName));
if (context != null)
context.startActivityForResult(intent, requestCode);
else
context.startActivityForResult(intent, requestCode);
}
@TargetApi(23)
public static boolean isSystemAlertPermissionGranted(Context context) {
final boolean result = Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP || Settings.canDrawOverlays(context);
return result;
}