-
android
-
(一) java基础面试知识点1、java中==,equals和hashCode的区别“==”: ==是运算符,用来比较两个值、两个对象的内存地址是否相等“equals()”: equals是Object类的方法,默认情况下比较两个对象是否是同一个对象,内部实现是通过“==”来实现的。 如果想比较两个对象的其他内容,则可以通过重写equals方法“hashCode()”: hashCoed也是Ob
-
android
-
三)常见的一些原理性问题1、Handler机制和底层实现 机制:hanlder是android线程间通信的一种实现,以消息队列的方式实现线程间数据的共享,通过Looper不断的轮询消息队列来 获取数据 底层:MessageQueen、Looper以及Looper内部的ThreadLocal,我们在线程中Looper对消息队列的管理过程离不开数据储存ThreadLocal,ThreadLocal在多
-
android
-
据外媒 XDA 报道,谷歌最近向 AOSP 项目提交了一项代码更改,其中添加了一个应用程序休眠服务功能,预计将在 Android 12 中实现。函数说明显示,该服务 “管理应用程序休眠状态,应用程序可以进入一种状态,这意味着它们没有被积极使用并且可以针对存储进行优化。”目前还不确定该功能是否会自动休眠应用程序,据外媒预计,该功能会将应用程序压缩成 APK 和相关资源文件进行存储,以减少手机存储空间
-
android
-
Mac完整卸载Android Studio的方法1、卸载Android Studio,在终端(terminal)执行以下命令:rm -Rf /Applications/Android\ Studio.app
rm -Rf ~/Library/Preferences/AndroidStudio*
rm ~/Library/Preferences/com.google.android.studio
-
android
-
内容Camera1.0Camera2.0权限android.permission.CAMERAandroid.permission.CAMERA布局SurfaceViewTextureView实现接口SurfaceHolder.Callback 1.surfaceCreated 2.surfaceChanged 3.surfaceDestroyedSurfaceTextureListener 1.
-
android
-
前言做移动端开发和前端开发的人员,对 MVC、MVP、MVVM 这几个名词应该都不陌生,这是三个最常用的应用架构模式,目的都是为了将业务和视图的实现代码分离,从而使同一个程序可以使用不同的表现形式。不过,网上的文章对这方面的解说众说纷纭,其中不乏有些错误的描述,导致有些人应用这些架构模式时陷入一些错误陷阱。本文将追根溯源,力求让大伙对这三个架构模式形成正确认识。MVC = Model-View-C
-
android00
-
这篇文章来源于去年和一位读者朋友(下文以小欧代称)的模拟面试,把面试问题记录一下,看看是否能给大家带来一些启发读者介绍涉及到个人隐私,这里不把简历放出来,对小欧做一些大致介绍工作情况小欧 19 年本科毕业,目前已入职百度专业技能小欧简历里写的专业技能比较全面,包括这些:Java 的知识(反射、泛型、注解、List 等集合源码、并发、JVM 相关)Android 知识(四大组件、View、Binde
-
android00
-
Android 中常常需要对图片进行缩放裁剪等处理,这里简单的介绍一下这两种处理方式的方法1.裁剪/**
* Returns an immutable bitmap from the specified subset of the source
* bitmap. The new bitmap may be the same object as source, or a c
-
android00
-
Android:SeekBar用法直接上代码:// MainActivity.java
package com.example.administrator.seekbar;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.SeekBar;
-
android00
-
安卓有五种打印日志的方法1.log.v(tag,message); //verbose模式下打印最详细的日志2.log.d(tag,message); //debug模式级别的日志3.log.i(tag,message); //info级别的日志4.log.w(tag,message);//warn级别的日志5.log.e(tag.message); //error级别的日志注意:tag和mess
-
android00
-
Android 获取屏幕宽度跟高度在android开发过程中,对于控件的高度,宽度,通过下面的函数调用,轻松实现编程中设置控件的相对宽度跟高度: // 获得屏幕的宽度
public static int getScreenWidth(Context ctx) {
// 从系统服务中获取窗口管理器
WindowManager wm = (Windo
-
android00
-
Android 获取屏幕宽度和高度直接转换为DP WindowManager wm = (WindowManager) getActivity().getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
wm.getDefaultDis
-
android00
-
.gitignore 不生效的解决方案 当我们将 .gitignore 文件配置好后,却往往不能失效。这是因为 .gitignore 只能忽略那些没有被追踪(track)的文件,因为 git 存在本地缓存,如果文件已经纳入了版本管理,那么修改 .gitignore 是不能失效的。那么解决方案就是要将 git 的本地缓存删除,然后重新提交。git rm -r --cached .
git add
-
android00
-
Android 获取app版本号直接上代码: /**
* 获取版本号
* Context context
* @return 版本号
*/
public static String getAppVersionName(Context context) {
String versionName = "";
-
android
-
问题:链接是https的,但是里面的图片是http的,所以导致图片加载不出。解决:在webview中加上代码webView.getSettings().setJavaScriptEnabled(true); // 启用js
webView.getSettings().setBlockNetworkImage(false); // 解决图片不显示
if(Build.VERSION.SDK_INT
-
android
-
Glide果然好用,调用方便,提供多种图片加载框架,一直用的是Glide,这里我也没有改,项目上线一个月了,突然测试发现一个问题,就是图片是概率黑屏,我一致以为是图片未下载成功,就没在意,因为老化房有一台设备,一致在运行,没有出现这个问题,后来我自己下载了4K的高清出片,来测试,果然OOM,很好奇,Glide应该有缓存处理的工作,但是我无论怎么优化,还是OOM,从studio监控的内存状态,目前系
-
android
-
记录一下如何把软键盘的回车按键变成搜索按键这个估计大部分人也经常用的到这个直接xml文件设置 EditText 三个属性android:imeOptions="actionSearch"
android:singleLine="true"
android:maxLines="1"网上有些直接用 android:imeOptions="actionSearch"这样是不够的 而 android:
-
android
-
今天在敲代码的过程中,有个需求是延迟执行某方法。整理收集了三种方法,自己用的是第三种。第一种线程休眠: new Thread() {
@Override
public void run() {
super.run();
Thread.sleep(3000);//休眠3秒
-
android
-
导入别人的项目报这个问题:Location specified by ndk.dir (D:\android\2_NDK\android-ndk-r16b) did not contain a valid NDK and and couldn't be used解决方案: ndk目录 更改成自己的,或者去掉根目录 local.propertyies## This file must *NOT* b