Android基础

Resource IDs cannot be used in a switch statement in Android library modules

Resource IDs cannot be used in a switch statement in Android library modules

Android library中生成的R.java中的资源ID不是常数 不能使用switch…case,解决方法: @Override public void onClick(View v) { int id = v.getId(); if (id == R.id.btn_log

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Android Support Library Packages

Android Support Library Packages

主页及最新Release:https://developer.android.google.cn/topic/libraries/support-library/packages Recent Support Library Revisions:https://developer.android.g

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Android Cannot resolve symbol KeyEventCompat(android.support.v4.view.KeyEventCompat找不到)

Android Cannot resolve symbol KeyEventCompat(android.support.v4.view.KeyEventCompat找不到)

升级后compileSdkVersion为26,因为此时classpath 'com.android.tools.build:gradle:3.0.0',v4包的版本是27.0.0。 报KeyEventCompat类(项目中用到KeyEventCompat的hasNoModifi

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Android Bug调试工具推荐

Android Bug调试工具推荐

腾讯Bugly 腾讯Bugly - 一种愉悦的开发方式是一款非常方便帮组开发者实时的检测App的异常及应用统计,还有更加强大的应用更新及热修复。 官网地址:https://bugly.qq.com Google Acra Google Acra是Google推出的开源Android应用Crash

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Android软键盘显示隐藏事件监听

Android软键盘显示隐藏事件监听

由于Android系统并没有提供软键盘弹入和弹出的系统方法,所以我们有时候需要用到监听软键盘的时候会非常的麻烦,根据监听视图树中全局布局发生改变或者视图树中的某个视图的可视状态发生改变超过一定的数值来监听软键盘的弹入弹出事件,使用起来也非常简单。 自定义监听工具类 public class Sof

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android之Activity界面劫持反劫持

Android之Activity界面劫持反劫持

总结 Activity劫持原理 1、注册一个Receiver,响应android.intent.action.BOOT_COMPLETED,使得开机启动一个Service;这个Service,会启动一个计时器,不停循环查询所有当前运行的进程(因为app可以枚举系统当前运行进程而无需声明其他权限) 2

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android实现3种Notification(状态栏通知)

Android实现3种Notification(状态栏通知)

Notification,是一种具有全局效果的通知,可以在系统的通知栏中显示。当 APP 向系统发出通知时,它将先以图标的形式显示在通知栏中。用户可以下拉通知栏查看通知的详细信息。下面会分别实现普通的通知,带自定义视图的通知,还有悬挂似的通知 3种方式开始前都要先执行下面这行代码: mNotific

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android获取APP当前进程的名称

Android获取APP当前进程的名称

public static String getProcessName(Context cxt, int pid) { ActivityManager am = (ActivityManager) cxt.getSystemService(Context.ACTIVITY_SERVICE);

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android获取音频焦点

Android获取音频焦点

/** * 夺取或释放音频焦点 * @param audioManager * @param bMute */ private void muteAudioFocus(AudioManager audioManager, boolean bMute) { if (Build.VERS

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android 软键盘弹出时把控件布局顶出去的解决方法

Android 软键盘弹出时把控件布局顶出去的解决方法

Android 软键盘弹出时把控件布局顶出去的解决方法: 在Activity的onCreate中setContentView之前加入代码 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android ListView addScrapView ArrayIndexOutOfBoundsException

Android ListView addScrapView ArrayIndexOutOfBoundsException

使用ListView自定义Adapter时出现ArrayIndexOutOfBoundsException错误: java.lang.ArrayIndexOutOfBoundsException: length=2; index=2 at android.widget.AbsListView

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android如何区分debug和release两种状态

Android如何区分debug和release两种状态

BuildConfig.DEBUG Android开发中识别debug还是release状态还是很有用的,比如说打印日志,有些日志开发的时候需要,可是线上正式包不需要,这时知道debug状态就可以很方便的隐藏非必要日志而又不影响开发。 一般使用BuildConfig.DEBUG来获取应用的状态,de

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android反编译

Android反编译

dex2jar 官方链接:https://sourceforge.net/projects/dex2jar/ d2j-dex2jar classes.dex JD-GUI 官方链接:http://jd.benow.ca/ Apktool 官方链接:https://ibotpeaches.githu

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android自定义Handler使用静态内部类避免内存泄漏

Android自定义Handler使用静态内部类避免内存泄漏

在Activity中声明Handler类时,Android Studio会提示警告: This Handler class should be static or leaks might occur 例如这样的代码: public class MainActivity extends Acti

Joe.Ye Joe.Ye 2023-02-25
0 0 0
Android Studio中添加GSON并使用GsonFormat快速实现实体类

Android Studio中添加GSON并使用GsonFormat快速实现实体类

简介 GSON是Google开发的Java API,用于转换Java对象和Json对象。 GitHub:https://github.com/google/gson 添加GSON依赖 方法一 1、点击菜单 File -> Project Structure,然后点击+号,选择Library

Joe.Ye Joe.Ye 2023-02-25
0 0 0
1 2 3 4 5 6