Android Location 权限管理

写了一个LocationPermissionGranter类, 用Fragment隐藏了requestPermissions和onRequestPermissionsResult回掉的部分, 实现无论在Activity还是Fragment中都简单易用,并且不受屏幕旋转等影响。 使用方法: LocationPermissionGranter(this).requirePermission(object : LocationPermissionGranter.LocationPermissionListener { override fun onLocationPermissionGranted() { showMessage("onLocationPermissionGranted") } override fun onLocationPermissionDenied(shouldShowDialog: Boolean) { showMessage("onLocationPermissionDenied

read more »

Charles调试Android 7网络请求

启用Charles SSL 首先设置Charles SSL, 这一步和其他SSL网络请求调试一样: 1. 在Proxy的Proxy Settings配置代理: 2. 在SSL Proxy Settings中配置SSL: 3. 在Help->SSL Proxy中安装自定义证书: Tips: 完成后, 本地的SSL请求应当可以在Charles正常显示。 设置Android模拟器/终端 1. 通过以下命令启动带proxy的模拟器 emulator -netdelay

read more »

使用9-patch png图像的Tips

最近开始踩 Android 屏幕适配的大坑,发现 9-patch png 用起来还是挺方便的。当然其中也遇到的一些问题,这里小做记录: 不同状态图像间有偏移 在 9-patch 编辑中可以看到拉伸预览。预览看上去正常,实机操作中有时会发现按下去的按钮的图像和默认状态的图像有细小的偏移。 解决方案:对不同状态的同一图像指定完全一致的 stretchable patches(左上) Content Padding 不一致 9-patch 的 content

read more »