1 华为 nova真机 打印不出Log

参考资料:http://www.apkbus.com/thread-585228-1-1.html

解决:针对权限问题,我们当然也可以解决的,华为手机在你的拨号界面,请拨*#*#2846579#*#*,我们就进入了工程菜单,接下来我们就可以操作了。点击ProjectMenu,进入后台设置,很容易看到的就是LOG设置。进入LOG设置,将AP日志打钩并关闭,或许你还有顾虑,那你就全部选中然后关闭,然后重新启动手机。

2 AS 在用vivo x9手机运行程序时,出现“解析软件包时出现问题”的问题。

参考资料:https://blog.csdn.net/wl521124/article/details/80558155

解决方法:

打开as 的setting界面,把instant run 界面的 enable 前面的√去掉,如下图:

3 launching app client not ready yet

新建工程时,打包运行,没有打包,也没有报错,提示 launching app client not ready yet

这个是一个很低级的错误,因为我新建工程时选择的是no activity, java文件下都没有代码,能打包成功才怪呢,估计只有像我这种菜鸟才犯这样的低级错误吧。老鸟也是一个坑一个坑过来的,这就是成长吧

从新建了一个工程,这次选的是empty activity, 这样再打包运行就可以了

4 kotlin定时器的使用

protected var mCompositeDisposables: CompositeDisposable? = null
var disposable = Observable.timer(, TimeUnit.MILLISECONDS).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()).subscribe{mAdapter.notifyDataSetChanged()}
mCompositeDisposables?.addAll(disposable)

上面代码表示延迟执行mAdapter.notifyDataSetChanged() 800ms

5 用Java代码改变xml布局中的margin

ViewGroup.MarginLayoutParams layoutParams = (ViewGroup.MarginLayoutParams)plSupport.getLayoutParams();
layoutParams.bottomMargin = 0;
plSupport.setLayoutParams(layoutParams);

6 本地打包是好的,jenkins打包有一个弹窗显示和本地打包显示的不一样

原因:定义的bean类没实现 basebean 导致解析不了

解决,定义的bean类实现 basebean

7 Namwspace 'app' is not bound

主要的问题是根节点少了一个声明。

xmlns:app="http://schemas.android.com/apk/res-auto"

参考:https://blog.csdn.net/mr_hjy/article/details/87436179

8 用Java改变TextView中的textStyle

例 字体加粗

xxx.setTypeface(null, Typeface.BOLD);

9 Java 自定义路由

try {
JSONObject param = new JSONObject();
param.put("selectTopic", true);
JSONObject data = new JSONObject();
data.put("name", "topic_list");
data.put("param", param);
JSONObject route = new JSONObject();
route.put("page", "flutter");
route.put("data", data);
.jump(route);
}catch (Exception e){
e.printStackTrace();
}

10 Android开发神器 Pandora

将pandora集成后,app只需摇一摇即可出现工具箱,包含ui、网络、沙盒(数据库等)、选择控件等功能

11 命令行编辑

./gradlew build (或者执行 ./gradlew assembleEnvtest 只打包测试版本)

cd build/outputs/apk/debug

adb install -r app-debug.apk 安装

12 【android】AudioManager音量控制

//音量控制,初始化定义

AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

//最大音量

int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);

//当前音量

int currentVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);

直接控制音量的多少:

if(isSilent){

mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);

}else{

mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, tempVolume, 0); //tempVolume:音量绝对值

}

13 AudioManager(音频管理器)

https://www.runoob.com/w3cnote/android-tutorial-audiomanager.html

14 大家对HttpUrlConnection这个类并不陌生,它处于java.net包下的,是JDK支持的。它主要用来服务器端发送Http请求

15 EventBus发消息所在文件,不用注册EventBus,如果注册了EventBus,没有接受,就会报错

EventBusException: Subscriber class *** and its super classes have no public methods with the @Subsc

16 ScrollView下轮播图片加载不出来,原因是ScrollView下只有一个轮播组件

结局:ScrollView下放一个RelativeLayout或者LinearLayout,再把轮播组件放到RelativeLayout内

注意:ScrollView的子元素只能有一个,可以是一个View(如ImageViewTextView等) 也可以是一个ViewGroup(如LinearLayoutRelativeLayout等),其子元素内部则不再限制,否则会报以下异常。

17 adb导出手机日志

1 adb devices 看看有没有连接成功手机

2 adb logcat -d > log.txt 已log.txt文件名保存

18 在Android开发中,常常需要调用对话框,但会遇到这样一种情况,在显示对话框的时候,点击对话框以外的屏幕其他区域,会关闭对话框。以下是解决该问题的设置:

 
AlertDialog.Builder builder = new AlertDialog.Builder(context);

//不关闭写法
builder.setCancelable(false); 
 
//关闭写法
builder.setCancelable(true);

参考:https://blog.csdn.net/xiaohei5188/article/details/16827709

Android开发走过的坑(持续更新)的更多相关文章

  1. Android开发问题汇总(持续更新)

    在Android开发中,总会有一些很小的问题.由于我们的不仔细,很容易忽略掉,从而导致在该问题上花费了很多的时间,造成工作进度的延迟. 为此,在这里做一下记录,避免再次浪费许多时间在这些问题上. 1. ...

  2. android开发常用组件【持续更新中。。。】

    UI相关 图片 Android-Universal-Image-Loader:com.nostra13.universalimageloader:异步加载.缓存.显示图片 ImageLoader:co ...

  3. 移动端H5制作安卓和IOS的坑 持续更新...

    移动端H5制作安卓和IOS的坑 持续更新... 前言:最近参加公司的H5页面创意竞赛,又遇到不少页面在不同系统上的坑.踩坑之余,觉得很多之前遇到的知识点都忘了,索性开一篇博文,把这些坑都统一归纳起来, ...

  4. iOS开发系列文章(持续更新……)

    iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...

  5. react-native —— 在Mac上配置React Native Android开发环境排坑总结

    配置React Native Android开发环境总结 1.卸载Android Studio,在终端(terminal)执行以下命令: rm -Rf /Applications/Android\ S ...

  6. 推荐扔物线的HenCoder Android 开发进阶系列 后期接着更新

    官网地址:http://hencoder.com/ 我来做一次辛勤的搬运工 HenCoder:给高级 Android 工程师的进阶手册 HenCoder Android 开发进阶: 自定义 View ...

  7. Android开源项目发现--- 效率开发工具篇(持续更新)

    1.Json2Java 根据JSon数据自动生成对应的Java实体类,还支持Parcel.Gson Annotations对应代码自动生成.期待后续的提取父类以及多url构建整个工程的功能 项目地址: ...

  8. 【Go】开发中遇到的坑——持续更新

    关于CGo多语言编译 问题出现在将openCV封装到go语言的时候.在编译时需要设置 CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -o xxx mai ...

  9. 微信小程序的坑(持续更新中)

    参与微信小程序开发有一段时间了,先后完成信息查询类和交易类的两个不同性质的小程序产品的开发:期间遇到各种各样的小程序开发的坑,有的是小程序基础功能不断改进完善而需要业务持续的适配,有的是小程序使用上的 ...

随机推荐

  1. percent|Cane|confess|ballot|conceal

    You got 20 percent of the answers right - that means one in every five.你20%的答案是对的,也就是说每5个中有1个是对的. N- ...

  2. Pandas写excel总结:写入多个sheet、1个sheet写入多行、向已有sheet追加数据

    1.最简单最基础的写:1excel1sheet df.to_excel("test.xlxs") 2.在一个excel文件里面写入多个sheet writer=pd.ExcelWr ...

  3. Vue axios 跨域访问Session,两次得到的Session不是同一个Session

    这个问题是因为,后台无法确认你是同一个“人”访问服务器,两次访问都给了你一个全新的Session,所以第一次保存的信息第二次请求无法得到,我的理解是,在跨域中,携带Cookie信息访问,即可让服务器确 ...

  4. ubuntu 18.04用apt安装mysql-server

    mysql5.7安装完成后普通用户不能进mysql 原因:root的plugin被修改成了auth_socket,用密码登陆的plugin应该是mysql_native_password,直接用roo ...

  5. 关于配置cordova的一些细节

    网上多数资料都是:安装nodejs->通过node js安装cordova->JDK->设置环境变量JAVA_HOME->安装android SDK->设置环境变量AND ...

  6. 怎样解决使用feof()函数时出现的问题?

    feof函数        昨天在做一个课程设计时,一个函数的功能是将文件中的数据一条条的读到链表中去.既然不确定有多少条数据,那只能借助feof()函数了,本来文件部分就没学好,也就知道这一个方法. ...

  7. C++走向远洋——37(工资类,2)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:salarly.cpp * 作者:常轩 * 微信公众号:Worl ...

  8. C++走向远洋——(项目二、存储班长信息的学生类、派生)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  9. python基础-流程控制语句

    所谓流程控制,就是在程序里面设定一些条件判断语句,满足哪条,就执行哪条 #if 单分支 if 条件: 满足条件后执行的代码 #例子 > : print()#结果为666 双分支 if 条件: 满 ...

  10. vim 编辑器技巧 打开多窗口编辑 vsp

    我有两个配置文件 [root@gameserver1 conf]# ls auth_1.json auth_2.json 先打开auth_2.json 在vim编辑器中打开auth_1.json,在打 ...