H5定位 // 定位(location) settings.setGeolocationEnabled(true); String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath(); //设置定位的数据库路径 settings.setGeolocationDatabasePath(dir); w
版本选择坑 Chromium 源码更新非常平凡,而且架构也经常变化,不像我们做项目,一套代码恨不得修修补补用上十几年。 10 中预编译的 Chromium Webview 版本,使用 WebView Shell,查看版本号为 74.0.3729.183: 然而,这里有一个巨大的坑。 在趟过 代码下载坑、编译坑、安装坑后,终于成功运行起来: 代码下载坑 由于众所周知的原因, Chromium 源码不能直接下载,我是挂了代理进行下载。 代码编译坑 编译代码过程中,出现如下错误: FAILED: gen/build/android/buildhooks/build_hooks_android_java.javac.jar gen/build 可以预料,后面还会继续踩坑。没办法,只能遇坑填坑,这不就是程序员的工作职责吗?
0x00 前言Deepin v20.2.2系统支持运行Android应用,于是安装了Windows/Deepin双系统后,开始了运行Android应用的踩坑之旅。以下是在这过程中的踩坑记录。 0x01 安装uengineDeepin中是通过一个叫uengine的工具来支持Android应用的,这是一个基于anbox进行二次开发而成的工具。 它的基本原理是通过在Linux内核中安装Android所需要的内核模块(如:binder、ashmem等),然后运行一个Android容器而实现的。 0x02 安装Android应用安装Android应用最简单的方法是在应用市场里下载安装,也可以使用命令行安装。 unauthorized正常Android设备在连接adb调试的时候会弹出授权窗口,但是这里怎么都无法弹出授权窗口,因此需要我们手动将adb的公钥拷贝到设备的对应目录中。
踩坑了啊,又踩坑了啊! 这次踩到一个特别无语的常识坑。知道真相的那一刻,人就是整个麻掉。
前言 在 Android 开发过程中,有些功能是通用的,或者是多个业务方都需要使用的。 为了统一功能逻辑及避免重复开发,因此将该功能开发成一个 SDK 是相当有必要的。 背景 刚好最近自己遇到了类似需求,在开发完 SDK 之后,集成到项目或者提供给别人的时候遇到了一些坑,这里分享一下,以避免其他需要开发 SDK 的开发者们重复踩坑。 缺点:maven publish 有个坑。见下文分析。 表格对比如下: 集成方式 优点 缺点 提供 Module 没有坑 维护麻烦,没有代码保护 提供 AAR 文件 只有一个文件 有坑,更新麻烦 推送到仓库 集成方便,版本管理 maven publish有个坑 通过在 android 块里面添加 android { defaultPublishConfig "release" } 可以指定。
基于前期调研,我们主要基于以下几方面进行Android 10的适配: Android X 分区存储 设备ID 明文HTTP限制 一、AndroidX AndroidX 对原始 Android Support 于是Android团队推出了一个鼎鼎大名的Android Support Library,用于提供向下兼容的功能。 =true android.enableJetifier=true 其中: android.useAndroidX=true 表示当前项目启用 AndroidX; android.enableJetifier 而且无论你的APP是否适配过Android 10。 3.1 IMEI等设备信息 从Android10开始普通应用不再允许请求权限android.permission.READ_PHONE_STATE。 对于像Android这样的开放性OS来说,占有的市场份额越大,整个Android生态系统的发展会越好。
OpenCv在计算机视觉方面大有用处,这篇文章主要记录在Android Framework集成OpenCv,对Camera数据流进行处理,遇到的问题记录备忘。 层集成 (下面的三方算法,是指的三方算法采用到了opencv) 1、三方算法是源码 (如下面所示,image.cpp是三方算法源码,该源码image.cpp文件中调用到opencv) // -----Android.bp DT_NEEDED "liblog.so" is not specified in shared_libs Fix suggestions: Android.bp: shared_libs: [ diff --git a/frameworks/base/native/graphics/jni/Android.bp b/frameworks/base/native/graphics/jni/Android.bp "], + + proprietary:true, + For Android.bp: vendor_available: true For Android.mk: LOCAL_VENDOR_MODULE
首先当然是Android的环境搭建,这里还是推荐把整个Android开发环境都弄起来,顺便还可以学学Android。 关于Android环境搭建,以及使用Android Studio可以参考我的另一篇文章搭建安卓开发环境(Android Studio) 这里就不赘述了,需要注意的是,要安装好SDK,AVD(不是AV, "$NVM_DIR/nvm.sh" 不过也许你之前装过node,那么这里有坑,你要看看自己之前装的node是什么版本,实际RN在编译项目的时候会使用系统的node。 export ANDROID_HOME=/usr/local/opt/android-sdk 开始工程 进入AwesomeProject,然后运行: $ react-native run-android 之后同样是使用react-native run-android命令。 Android 5.0以上 Android 5.0以上需要使用adb reverse命令。
又到了周五的胡扯时间,今天来扯一扯坑。 最近,有一个感觉,就是一直在填坑,我想不止我一个人,不少奋战在一线的“勇士”,都在填坑。一般来说坑分两种,自己挖的,和别人挖的。 挖坑也是有水平的,有的坑你根本就无从下手,除非你有“多年的道行”,否则你可能做的不是填坑,而是把坑弄的更大。 除了有多年“挖坑”,“踩坑”,“填坑”,的道行,你大约还的总结出来一套,如何来补坑的办法。 1 望, 遇到一个坑,首先你需要判断的是他到底是不是一个坑,首先要望,你先不要有任何的动作,先要观察,因为不了解具体情况和成因的情况下,你做的任何事情,都肯能变得更糟。 在MY.CNF 中注销掉这个参数,重启动服务器 再次运行MYSQLBINLOG 解开BINLOG 后发现有错误,看了刚踩完一个坑,又来一个坑,经过查询后,提示是MYSQLBINLOG 的版本不对 ?
---- Unity 踩坑小知识点学习 Unity中的 碰撞盒检测 Physics.OverlapBox、OverlapCapsule、OverlapSphere 在Unity中常见的有两种检测方法
这里只是想分享以下踩坑经验 希望大家不要像我一样粗心 java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.waitForConnect
──胡适 今天使用TreeMap踩坑了 代码如下: @Test void test() { Map<Integer, Object> map = new TreeMap<>(Comparator.comparing
在学习Gateway 限流的时候用到Sentinel,记录踩的坑。
当然本来可以装上1G多的VS Win10平台开发套件可能就能解决link.exe找不到的问题,嫌微软的东西太大太烦锁,所以还是用IDEA插件,发现调试只能CLion。
今天写了一个mysql数据库的用户新增模块,逻辑是根据用户 ID 查询用户数据,若不存在则创建新用户并返回用户数据,数据库是保持常连接状态,测试的时候发现无法读取最新数据,一直读取第一次的数据,然后就百度发现emmm,还真有志同道合的
needle [, int $offset = 0 ] ) 返回 needle 在 haystack 中首次出现的数字位置,以整型返回位置信息。如果没找到 needle, strpos() 将返回布尔型的 FALSE 值。
developer.android.com/reference/a… 这个问题解决之后,我心中又有这样的疑问,为什么别的地方没有问题,只有个性签名这里的 WebView 有问题。 font-family:system-ui;font-size:16px;color:#888888;">Https://www.baidu.com 可以看到里面字体的单位是 px,跟 Android 根据屏幕自适应),那么我们需要设置 html 的 viewport 规则,否则可能显示不正常 html 如果是自己拼接的,需要注意适配规则,像个人签名这种,用 webView 承载自己拼接的 html ,防止踩坑 WebView 字体常见的其他坑 手机设置字体大小导致h5页面在webview中变形 出现这个问题的原因是 默认浏览器中的内容是不受系统字体大小设置控制的,至少我遇到的几台手机都是这样的情况。 document.getElementsByTagName("html")[0].style.cssText = 'font-size: ' + fz * (fz / realfz) +"px"; } } 客户端 WebView 禁止缩放 Android
最近一朋友提了几个Android问题让我帮忙写个小分享,我觉得对新人还是挺有帮助的,所以有了这个小分享。 1.目前, Android APP开发完成后,通常需要在哪些机型上进行测试? http://developer.android.com/about/dashboards/index.html 源自Google Play的数据,每月都会进行update,可以及时了解Android版本比例趋势 目前三星和小米市场占有率是遥遥领先的,三星Note2、Note3、S3、S4、S5、小米123、红米必须测试,魅族也比较坑爹,加入测试名单吧。 做一个功能正常的App,开发者需要遵循一些开发守则,与此同时,设计师也需要有一套标准来设计Android UI,所有的Android UI设计指南都在这里了。 7.Android APP开发中其它需要提醒的问题 android4.4在UI线程无法进行网络操作不单只android API版本不一定导致运行异常,有些机型还使用Java 1.5进行编译,使用某些Java
1.安装node会自动安装对应的npm版本 查看版本对应 https://nodejs.org/zh-cn/download/releases/
params.putInt(MediaCodec.PARAMETER_KEY_REQUEST_SYNC_FRAME, 0); mMediaCodec.setParameters(params); } } 关键帧踩坑 或者 /system/vendor/etc/media_codecs.xml这是一个xml文件,可以直接看到MediaCodecs–>Decoders节点下的各个视频格式的支持情况,以**华为荣耀7x Android 也就是默认采用VBR 关于VBR CQ CBR区别,可查看Android原生编解码接口 MediaCodec 之——完全解析中的流控。 MediaCodecInfo.CodecProfileLevel.AVCLevel41); // Level 4.1 关于设置这两个参数,我发现某些设备上,设置了无效,还是默认值,经排查 是因为在android7.0 以下,android 内部写死了参数,编码出来的只能是Baseline,除非系统改过这个BUG,否者设置无效,甚至会导致configure参数失败。