首页 > 其他分享 >android随手记(六)

android随手记(六)

时间:2023-12-12 19:38:04浏览次数:42  
标签:return cursor 密钥 context 随手 android ID

23.后台弹出界面

Android Q之后的后台弹出需要申请悬浮窗权限(6.0后悬浮窗权限默认关闭,需要动态申请),如果是小米,vivo,oppo需要另外申请权限

/**

* 小米后台弹出界面检测方法

*

* @param context

* @return

*/

public static boolean canBackgroundStart(Context context) {

AppOpsManager ops = null;

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {

ops = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE);

}

try {

int op = 10021;

Method method = ops.getClass().getMethod("checkOpNoThrow", new Class[]{int.class, int.class, String.class});

Integer result = (Integer) method.invoke(ops, op, android.os.Process.myUid(), context.getPackageName());

return result == AppOpsManager.MODE_ALLOWED;

} catch (Exception e) {

}

return false;

}

/**

* 判断vivo后台弹出界面

*

* @param context

* @return

*/

public static boolean getvivoBgStartActivityPermissionStatus(Context context) {

String packageName = context.getPackageName();

Uri uri2 = Uri.parse("content://com.vivo.permissionmanager.provider.permission/start_bg_activity");

String selection = "pkgname = ?";

String[] selectionArgs = new String[]{packageName};

try {

Cursor cursor = context

.getContentResolver()

.query(uri2, null, selection, selectionArgs, null);

if (cursor != null) {

if (cursor.moveToFirst()) {

int currentmode = cursor.getInt(cursor.getColumnIndex("currentstate"));

cursor.close();

return true;

} else {

cursor.close();

return false;

}

}

} catch (Throwable throwable) {

throwable.printStackTrace();

}

return false;

}

24.唯一设备码问题

1.android q之后将不再能获取设备imei码

2.android id在androi8.0之后将不再唯一,即不同应用的获取到的android id不一样 原文如下:

现在,平台改变了标识符的处理方式。 对于在 OTA 之前安装到某个版本 Android 8.0 ( API 级别 26 )的应用,除非在 OTA 后卸载并重新安装,否则 ANDROID_ID 的值将保持不变。要在 OTA 后在卸载期间保留值,开发者可以使用密钥 /值备份关联旧值和新值。 对于安装在运行 Android 8.0 的设备上的应用,ANDROID_ID 的值现在将根据应用签署密钥和用户确定作用域。应用签署密钥、用户和设备的每个组合都具有唯一的 ANDROID_ID 值。因此,在相同设备上运行但具有不同签署密钥的应用将不会再看到相同的 Android ID (即使对于同一用户来说,也是如此)。 只要签署密钥相同(并且应用未在 OTA 之前安装到某个版本的 O ),ANDROID_ID 的值在软件包卸载或重新安装时就不会发生变化。 即使系统更新导致软件包签署密钥发生变化,ANDROID_ID 的值也不会变化。 要借助一个简单的标准系统实现应用获利,请使用广告 ID。广告 ID 是 Google Play 服务针对广告服务提供的唯一 ID,此 ID 可由用户重置。

标签:return,cursor,密钥,context,随手,android,ID
From: https://blog.51cto.com/u_16269895/8789995

相关文章

  • android重启app
    code//获取当前应用的包名和类名StringpackageName=getPackageName();StringclassName=getClass().getName();//创建IntentIntentintent=newIntent(curAct,MainActivity.class......
  • 关于Android studio新版本和NEW UI显示返回按钮的设置
    1.新版Androidstudio问题因为在新版本的AndroidStudio中,默认情况下是没有直接的选项来显示返回上一步按钮在状态栏上的,可以通过以下方法来实现返回上一步的功能:在AndroidStudio的顶部菜单栏中,选择"View"。在"View"菜单中,选择"Appearance"。在"Appearance"子菜单中,勾选"Toolbar"......
  • 车机 Android 环境下利用 CarAudioService 实现自定义 Java 服务自启动
    注意:本文基于Android11进行分析Qidi2023.11.28(MarkDown&Haroopad)0.简介AndroidRO(ResourceOverlay)机制Overlay实现的效果正如其字面意思,就是“在原有效果的基础上再叠加一些效果”。Android提供了两种实现方式:编译时:https://source.android.com/docs/set......
  • 车机 Android 环境下利用 CarAudioService 实现自定义 Java 服务自启动
    注意:本文基于Android11进行分析Qidi2023.11.28(MarkDown&Haroopad)0.简介AndroidRO(ResourceOverlay)机制Overlay实现的效果正如其字面意思,就是“在原有效果的基础上再叠加一些效果”。Android提供了两种实现方式:编译时:https://source.android.com/docs/set......
  • 车机 Android 环境下利用 CarAudioService 实现自定义 Java 服务自启动
    注意:本文基于Android11进行分析Qidi2023.11.28(MarkDown&Haroopad)0.简介AndroidRO(ResourceOverlay)机制Overlay实现的效果正如其字面意思,就是“在原有效果的基础上再叠加一些效果”。Android提供了两种实现方式:编译时:https://source.android.com/docs/set......
  • Android 11 sim卡来电不弹出悬浮通知,默认来电默认全屏
    默认情况下,来电android是以通知窗口的形式显示,只在屏幕的顶部弹出一个悬浮通知,现在改为全屏显示,直接跳转来电界面InCallActivity\packages\apps\Dialer\java\com\android\incallui\StatusBarNotifier.java/***HelpermethodforupdateInCallNotification()andupdateN......
  • 【Android】Android清除本地数据缓存代码
    /**文件名:DataCleanManager.java*描述:主要功能有清除内/外缓存,清除数据库,清除sharedPreference,清除files和清除自定义目录*/importjava.io.File;importandroid.content.Context;importandroid.os.Environment;/***本应用数据清除管理器*/public......
  • Android OpenGl ES 3.0 学习笔记
    titleOpenGLES3.0DrawTriangleJava->JNI:(1)Java_com_oyp_openglesdemo_render_MyNativeRenderer_nativeSetRenderType(100,100)Java->MyGLRenderContext:GetInstance()Java->MyGLRenderContext:SetRenderType(100)noterightofNativeTriangle:GLBaseSample......
  • Android Studio安装图文详细版
    前言全局说明一、下载AndroidStudio下载文件归档:https://developer.android.google.cn/studio/archive.html下载:android-studio-2022.3.1.20-windows.exe备用下载:android-studio-2022.3.1.20-windows.exe下载好文件:二、安装下图,路径不要有空格和中文名路径(D:\Androi......
  • 开源库推荐】#5 Android高亮引导库
    原文:【开源库推荐】#5Android高亮引导库-Stars-One的杂货小窝本文介绍2个高亮引导库HighLightPro和Curtainhyy920109/HighLightPro:Ahighlightlibandalsoitcanbeasimplepopupwindowlibforandroidsoulqw/Curtain:一个Android高亮View蒙层库HighLi......