
android
yuzhiyun3536
鹅厂 IOS 小鲜肉
zhiyunyu@tencent.com
本博客不再更新,请前往简书。
简书 http://www.jianshu.com/u/c0452f9c97d6
展开
-
CircleImageView的使用
头像总是圆形的好看,github有开源代码。推荐一篇博客,http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0806/3268.html 源码位置:https://github.com/hdodenhof/CircleImageView...原创 2016-05-16 21:43:15 · 144 阅读 · 0 评论 -
android开发中获取SDK自带的图片
在开发中要用到很多的图片,其实我们可以直接使用android sdk自带的图片,有大量供你选择,而且都有不同大小的图片来适应分辨率,很方便。 那么如何获取到这些图片呢? <android.support.design.widget.FloatingActionButton android:id="@+id/fa...原创 2016-08-17 14:19:57 · 420 阅读 · 0 评论 -
live Template
这是android studio提供的另一种方便开发的使用工具,打开方式为》setting>Editor》Live Template. 比如展开Android: 可以看到其中有fbc(findviewbyid with cast),这就表示,只需要在代码编辑界面输入fbc,然后回车就可以直接出现:() findViewById(R....原创 2016-08-24 12:08:14 · 147 阅读 · 0 评论 -
activity 模板
转载自hongyang ,http://blog.youkuaiyun.com/lmj623565791/article/details/51592043 new 一个activity的时候,可以使用一些模板,可以减少代码的输入,那么这些模板的位置就在android studio安装目录的子目录下,示例:E:\Android\Android Studio\plugin...原创 2016-08-25 15:02:58 · 179 阅读 · 0 评论 -
ndk中打印log
编译报错: undefined reference to `__android_log_print',于是按照这篇博客的指引,加入了ldLibs "log", "z", "m" defaultConfig { applicationId "com.yuzhiyun.listenforuninstall" minSdkVersion 15 ...原创 2016-08-27 18:42:37 · 260 阅读 · 0 评论 -
在监听卸载的过程中学到的知识
最终我并没有实现这个功能,我本来希望能够实现在用户卸载程序之后,打开用户反馈网页,我暂时用www.baidu.com代替反馈网页。 大体的想法是使用ndk开发,在c代码中fork一个子进程,在子进程中监听data/data/packageName文件是否消失来判断app是否被卸载,由于子进程不会立刻被杀死,这样就能实现想要的功能了,但是不知道为什么我一卸载app的瞬间...原创 2016-08-27 20:04:51 · 119 阅读 · 0 评论 -
D/dalvikvm: No JNI_OnLoad found in /data/app-lib/com.yuzhiyun.listenforuninstall
ndk开发中会出现这个错误,是因为在c文件里面没有加JNI_OnLoad函数,这是加载so库的时候会首先被执行的函数,但是其实不写这个函数,出现了这个错误,并不影响c代码的执行,所以不必担心程序的运行。比如我之前写的一个计算平方数的ndk小demo,没写JNI_OnLoad函数,程序可以正常执行。 ...原创 2016-08-27 20:17:28 · 407 阅读 · 0 评论 -
intent调用系统文件管理器打开指定路径目录
当我们知道一个文件的路径,如何调用系统文件管理器显示它的位置呢。代码://getUrl()获取文件目录,例如返回值为/storage/sdcard1/MIUI/music/mp3_hd/单色冰淇凌_单色凌.mp3File file = new File(getUrl());//获取父目录File parentFlie = new File(file.getParent())...原创 2015-11-22 19:01:56 · 1683 阅读 · 0 评论 -
content provider 的query使用查询系统数据,获取所有音乐的title
Content Provider 相当于数据的接口,通过它可以 把程序内部的数据向其他应用公开,这样的话,其他应用程序就可以通过Context.getContentResolver方法获得ContentResolver对象,并使用ContentResolver.insert,ContentResolver.delete,ContentResolver.update,ContentRe...原创 2015-12-08 19:00:22 · 378 阅读 · 0 评论 -
SharedPreferences
SharedPreference通过key-value方式存取数据。 一:如何存储数据 // 第一步,获得SharedPreferences对象,第一个参数指定存储数据的文件名称。第二个参数代表模式,一般默认Activity.MODE_PRIVATE SharedPreferen...2015-12-10 15:01:29 · 117 阅读 · 0 评论 -
使用ExpandableListView以及如何优化view的显示减少内存占用
上篇博客讲到如何获取手机中所有歌曲的信息。本文就把上篇获取到的歌曲按照歌手名字分类。用一个ExpandableListView显示出来。 MainActivity .javapublic class MainActivity exten...原创 2015-12-11 15:52:45 · 466 阅读 · 0 评论 -
Handler的使用总结
Handler主要由2个用途。一:用于延迟执行;二:用于子线程更新UI操作。 一:延迟执行;延迟方法列举:postAtTime(Runnable,long)postDelayed(Runnable long)sendMessageAtTime(Message,long)sendMessageDelayed(Message,long) 比如启动画...原创 2015-12-11 16:50:38 · 136 阅读 · 0 评论 -
view.setTag
无意中注意到了view.setTag(Object tag)方法.Tag在View中是很有作用的属性,API中这样描述的:Unlike IDs, tags are not used to identify views. Tags are essentially an extra piece of information that can be associated with a view...原创 2015-12-11 22:17:29 · 178 阅读 · 0 评论 -
在手机端和ddms电脑端查看data/data目录下某个应用的sharedPreference
我总结过sharedPreference的用法,我们清楚,它的机制就是用xml文件存储数据。但是该如何查看这个文件呢? 该文件在手机的data/data/包名/shared_prefs目录下。我们手机自带的文件管理器看不到的。 首先讲手机端查看:一:获取root权限 建议使用kingRoot电脑版,很简单,数据线连接手机就可以啦。 二:下载Ro...2015-12-22 15:28:44 · 647 阅读 · 0 评论 -
Error:Execution failed for task ':app:processDebugManifest'.
D:\AndroidStudio\workSpace\A666\app\src\main\AndroidManifest.xml:13:9-27 Error: Attribute application@label value=(溜溜) from AndroidManifest.xml:13:9-27 is also present at [A666:materialwidget:unspec...原创 2015-12-24 23:16:24 · 347 阅读 · 0 评论 -
2048的图片版本
自己做了一个2048的创意版本,绝对原创噢,效果如下: 源码在这里:https://github.com/yuzhiyun/Growup2048 涉及知识点: 1.自定义view 2.自定义groupView 3.手势判断 ...原创 2016-08-12 22:07:29 · 1537 阅读 · 0 评论 -
hellocharts-samples,android 图表工具
github上有一个图表工具hellocharts,非常的精美,由于github上提供的sample不是android studio环境下的,所以我就把sample源码的环境转换成了android studio,并且把apk也提取出来了,欢迎前去下载,直接查看效果。https://github.com/yuzhiyun/HelloChartSample ...2016-08-08 11:05:57 · 128 阅读 · 0 评论 -
Activity生命周期
这段时间做到一个涉及生命周期的软件,之前一直没仔细注意Activity生命周期的具体细节,今天就写了一个测试类来看看效果。记录如下: public class TestActivity extends AppCompatActivity { /** * 打开一个 Activity:onCreate 》 onStart 》onResume ...原创 2016-08-03 10:44:55 · 108 阅读 · 0 评论 -
android studio下第一个ndk程序
1.安装ndk 下载一个android-ndk-r10e-windows-x86.exe文件,运行后会在选定目录下产生一个文件夹,就是ndk所在目录了。2.配置ndk file>project structure>SDk location>Android ndk location>选择ndk目录即可...2016-05-22 13:35:25 · 109 阅读 · 0 评论 -
openCv的第一次使用
我是参考一位大师完成了一个小例子:http://www.mobile-open.com/2015/86176.html但是需要安装opencv提供的manager apk,并且在我的手机里安装了也没有,就是报错OpenCV was not initialized correctly后来发现有一种方法可以免去在手机里安装manager的步骤http://www.cnblogs...原创 2016-05-22 16:52:06 · 174 阅读 · 0 评论 -
android 端拍照并运用Tesseract OCR 识别图片中字符
借鉴了一篇博客:http://my.oschina.net/yushulx/blog/359468#OSC_h3_4英文版在这里:http://www.codepool.biz/making-an-android-ocr-application-with-tesseract.html 我上传了一个android studio环境下的例子,可以拍照或者选择图库中图片进行识别...原创 2016-05-24 22:32:26 · 778 阅读 · 1 评论 -
git 命令之添加app-debug.apk文件到github仓库
前些天上传android 工程到github的时候,发现远程仓库里找不到apk文件(事实上是整个build文件夹都找不到了),我就觉得很奇怪,然后我就把apk单独放在项目根目录下,然后add 进去,报错如下: 事实上,github会有一个.ignore文件记录着一些文件名称,这些文件由于是编译产生的、或者是执行文件,会被忽略,不上传到github,但是如果你一...2016-07-09 14:41:56 · 449 阅读 · 0 评论 -
Android 的BaseActivity
当代码量变多的时候,其实Activity是很混乱的,我们很有必要自己定义一个BaseActivity来管理代码,使得代码更加规范,这是我自己写的一个示范的例子,有需要的童鞋可以参考下。 import android.content.Context;import android.os.Bundle;import android.support.v7.app.A...2016-07-10 10:48:12 · 206 阅读 · 0 评论 -
一些关于android控件布局的小细节记录
1、指定本元素的子元素相对它的对齐方式 android:gravity="top" 2、控件本身在父布局上的位置设置android:layout_gravity="center" layout_gravity好像只在LinearLayout有作用,且注意两点: 垂直(vertical)的LinearLayout布局内无法通过控件的Android:...原创 2016-07-10 21:22:48 · 137 阅读 · 0 评论 -
Android学习资源
今年大二的学习结束了,想来大二刚开学的时候接触到了Android,便喜欢上了它,断断续续已经学了一年了,现在整理下一些好的资源。 大型网站:Android中文社区: http://www.android-doc.com/apps/forum/forum.phpAndroidDevTools: ...2016-07-14 16:01:02 · 160 阅读 · 0 评论 -
Android的 assets和raw
Asset和raw都是资源文件夹,比如可以放置数据库文件,音乐文件等等,这些文件在生成APK的时候不会被转换成二进制文件。Asset和raw的区别: 一、Assets和res在同一个目录,但是raw在res目录下,并且只有Assets才支持建立子目录。 二、raw中的文件会被映射到R文件中,访问的时候直接使用资源ID即R.raw.*,而assets文件夹下的文件...2016-07-18 17:38:49 · 208 阅读 · 0 评论 -
sqLite Editor查看Android手机的sqlite数据库文件
sqlite数据库的内容在电脑上可以用navicate查看,但是在手机里系统不提供软件给人查看,在获取root权限之后,用sqLite Editor就可以查看啦。 在软件的主界面有4个tab,在FILES tab下找到目录data/data/包名/,就可以看到数据库文件啦。这个软件是通过一个叫“手机乐园”的客户端搜索到的,我本来打算把sqLite Edi...原创 2016-07-19 16:59:54 · 417 阅读 · 0 评论 -
file is encrypted or is not a database
static String DB_PATH = "/data/data/com.yuzhiyun.chemistry/databases/";static String DB_NAME = "sqlite3.db";private SQLiteDatabase db;this.db = SQLiteDatabase.openDatabase(DB_PATH+...2016-07-20 10:52:31 · 2514 阅读 · 0 评论 -
如何解决换行符\n和制表符\t 在textview中失效
在讲一个问题之前,先看一段小代码 String c="name\\nname"; Log.i("检测c",c); Log.i("检测c",c.replace("\\n","\n")); 上述代码的打印结果是这样的:07-22 21:25:04.981 25196-25196/com.yuzhiyun.chemistry...2016-07-22 21:38:47 · 841 阅读 · 0 评论 -
正确使用toast
用户操作时候可能出现多次重复点击一个按钮的现象,然后toast的就断弹出,甚至当我们进行其他操作的时候,本应弹出新的toast,但是还是显示之前还未显示完成的toast,所以有必要正确的使用toast,我的做法是新建一个类,把toast进行封装: public class toast { private static Toast toast; pu...原创 2016-07-30 12:12:47 · 143 阅读 · 0 评论 -
android studio常用快捷键记录
注:快捷键可以根据开发者自己的喜好来设置,设置途径:file》setting>keymap 代码整理: Ctrl+Alt+L (format)去除多余import的包: Ctrl+Alt+O注释: ...原创 2016-08-01 10:23:46 · 126 阅读 · 0 评论 -
MeasureSpec类
截取MeasureSpec类的源代码出来看看 /** * A MeasureSpec encapsulates the layout requirements passed from parent to child. * Each MeasureSpec represents a requirement for either the width or the ...2016-08-01 15:23:45 · 114 阅读 · 0 评论 -
android .so文件引入,以及meta-data
今天做一个项目,需要用到百度地图的SDK,下载后一步一步操作了,其中有so文件的导入。 我记得我以前写代码的时候也导入过so文件,但是从未深入思考过,于是今天突然觉得我应该仔细了解下so文件干嘛的啊! 导入so文件很简单,有一种方法就是和jar文件一样放在android工程libs目录下,然后在build.gradle里面加如下代码: ...原创 2016-04-04 21:58:13 · 198 阅读 · 0 评论