Android 学习笔记

2014.9.17

松下被拒,东软也没消息,太打击了。。接到通知明天面试美团。前几天学习opencv,最近两天忙android 下载项目,记点有用的。

bitmap序列化:

http://blog.youkuaiyun.com/woaieillen/article/details/8199950  

这样就可以将bitmap数据存到bin里了。

webview 获取favicon问题。 webview.getfavicon()返回null  

http://stackoverflow.com/questions/3462582/display-the-android-webviews-favicon

onCreate 里加入 WebIconDatabase.getInstance().open(getDir("icons", MODE_PRIVATE).getPath());

但是getfavicon()还是时常返回null,WebChromeClient 的 onReceivedIcon()应该是比较靠谱的。


2014.9.25

在连续被松下东软360美团商泰拒之门外后,终于被新松要了,今天签了三方,不知道日后待遇怎么样。

android 将自己注册为浏览器。别的应用想要打开url的时候会弹出候选打开方式,把自己的app加入其中,的方法:

http://blog.vogella.com/2011/02/21/android-intents/

之前把它加入到

<intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

这里了,是没有效果的。

        <activity
            android:name="com.example.tabtest3.MainActivity"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />


                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" >
                </action>
                <category android:name="android.intent.category.DEFAULT" >
                </category>
<data android:scheme="http"/>
            </intent-filter>
        </activity>

这样就可以了。

然后在activity里

Intent intent = getIntent();  
        if(Intent.ACTION_VIEW.equals(intent.getAction())){  

不清楚if里的判断是何意。


10.28

jni 出现ReferenceTable overflow (max=1024) 错误

http://blog.youkuaiyun.com/xiechengfa/article/details/6228524

 (env)->GetShortArrayElements

 (env)->ReleaseShortArrayElements


11.5

Bitmap 复制 public static Bitmap createBitmap (Bitmap src)

下拉菜单:Spinner  http://www.open-open.com/lib/view/open1330651497624.html

 Spinner.setSelection(int position); 来设置初始显示哪个


11.6

屏幕适配 http://blog.youkuaiyun.com/guolin_blog/article/details/8830286

res/layout-sw600dp/ 屏幕宽度大于600dp则优先从这个文件夹里找layout,没有则在layout文件夹找

togglebutton自定义 http://blog.youkuaiyun.com/wwj_748/article/details/9967757

获取屏幕宽度dp相关:http://blog.youkuaiyun.com/ithomer/article/details/6688883

http://blog.youkuaiyun.com/cocodehouse/article/details/7329631

http://blog.sina.com.cn/s/blog_b5c9056601018kou.html


11.8

网络连接改变监听: http://stackoverflow.com/questions/1783117/network-listener-android

获取联网方式: http://www.2cto.com/kf/201111/109796.html


2015.1.23

ConcurrentModificationException异常: http://blog.youkuaiyun.com/lirunfa/article/details/7353857

synchronized: http://www.cnblogs.com/devinzhang/archive/2011/12/14/2287675.html

 三、尤其关键的是,当一个线程访问object的一个synchronized(this)同步代码块时,其他线程对object中所有其它synchronized(this)同步代码块的访问将被阻塞。


2015.3.17

对Serializable用FileOutputStream writeObject存储为本地文件bin,如果程序签名换了,是无法读取的

fragment获取activity context :  getActivity();


jni 环境配置:http://blog.youkuaiyun.com/lemon_tree12138/article/details/42523435

实践发现不用按照上面的讲解

1, 新建工程:正常新建,然后右击项目,android tools->add native support

2, 工程属性里:C/C++ Build -> Environment   添加一个 NDKPATH 指向 ndkroot(ndk的文件夹)

libpcap :   http://blog.youkuaiyun.com/htttw/article/details/7521053


2015.5.27

最近修改了一下videodownloader,增加了直播HLS的下载,目前能下乐视直播、天天直播、日本的m.ustream.tv

关于iframe的DOM查找问题,所有的HTML5视频网站按理说应该是都有video标签的,有的是在iframe里,但是有的时候DOM查找并不能嗅探到,因为存在跨域问题,iframe的域如果与网页的不同,那么就无法操作,提示SecurityError ... Blocked a frame with origin...from accessing a cross-origin frame。(http://stackoverflow.com/questions/25098021/securityerror-blocked-a-frame-with-origin-from-accessing-a-cross-origin-frame)

同源策略Same-origin policy,(同源策略,简单地说就是要求动态内容(例如,JavaScript或者VBScript)只能阅读与之同源的那些HTTP应答和cookies,而不能阅读来自不同源的内容。更为有趣的是,同源策略对写操作没有任何限制。http://daimojingdeyu.iteye.com/blog/1754599)

m.cmt.com是https的,嗅探到的是m3u8嵌套列表,但是请求次级列表时返回403,在chrome上调试发现,如果单给次级列表会403,如果在chrome上下载嵌套列表,再下载次级列表,则可以下载,且清空cookie则403,所以猜想是cookie原因。最后发现是请求嵌套列表时会返回cookie,请求次级列表时带上这个cookie则请求成功。


2015.6.16

Android4.4以上透明导航栏状态栏(Translucent system bar)

http://segmentfault.com/a/1190000000403651

http://www.bkjia.com/Androidjc/913061.html

	// 1.2新加=======================================================
	if (getAndroidSDKVersion() >= Build.VERSION_CODES.KITKAT) {
            // 透明状态栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            // 透明导航栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
            
            // 界面在状态栏下面
            alLayout.setFitsSystemWindows(true);
            alLayout.setClipToPadding(true);
	}

最根layout有背景图片,平铺屏幕。所有界面控件都在alLayout上,alLayout在状态栏、导航栏之间


2015.6.22

opengl抗锯齿有些机器崩溃问题。使用cocos2dx的EGLConfigChooser,解决了问题。


2015.7.5

AutoCompleteTextView 可以实现输入提示(类似下拉菜单)

http://www.cnblogs.com/tinyphp/p/3969984.html



2016.1.18

开机启动

http://blog.youkuaiyun.com/sunboy_2050/article/details/8240956


4.0+ Home键失效:配置Activity增加如下

<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.HOME" />

crash后重启activity:配置Activity属性

android:stateNotNeeded="true" 



2016.2.19

listview adapter 偶尔抛出异常

java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread.

是因为数据源变了但是没有调用notification。我这次遇到是因为数据源清空导致的。

解决办法,可以在adapter内声明一个数据源,引用到原数据源,这样原数据源置为null,adapter内的数据源依然存在

adapter的getview、getcount等都使用adapter内的数据源。


listview adapter 的 getView、getCount疯狂调用。

原因是listView必须是match_parent,不能是wrap_content

http://stackoverflow.com/questions/2618272/custom-listview-adapter-getview-method-being-called-multiple-times-and-in-no-co



(1)普通用户端(全平台) 音乐播放核心体验: 个性化首页:基于 “听歌历史 + 收藏偏好” 展示 “推荐歌单(每日 30 首)、新歌速递、相似曲风推荐”,支持按 “场景(通勤 / 学习 / 运动)” 切换推荐维度。 播放页功能:支持 “无损音质切换、倍速播放(0.5x-2.0x)、定时关闭、歌词逐句滚动”,提供 “沉浸式全屏模式”(隐藏冗余控件,突出歌词与专辑封面)。 多端同步:自动同步 “播放进度、收藏列表、歌单” 至所有登录设备(如手机暂停后,电脑端打开可继续播放)。 音乐发现与管理: 智能搜索:支持 “歌曲名 / 歌手 / 歌词片段” 搜索,提供 “模糊匹配(如输入‘晴天’联想‘周杰伦 - 晴天’)、热门搜索词推荐”,结果按 “热度 / 匹配度” 排序。 歌单管理:创建 “公开 / 私有 / 加密” 歌单,支持 “批量添加歌曲、拖拽排序、一键分享到社交平台”,系统自动生成 “歌单封面(基于歌曲风格配色)”。 音乐分类浏览:按 “曲风(流行 / 摇滚 / 古典)、语言(国语 / 英语 / 日语)、年代(80 后经典 / 2023 新歌)” 分层浏览,每个分类页展示 “TOP50 榜单”。 社交互动功能: 动态广场:查看 “关注的用户 / 音乐人发布的动态(如‘分享新歌感受’)、好友正在听的歌曲”,支持 “点赞 / 评论 / 转发”,可直接点击动态中的歌曲播放。 听歌排行:个人页展示 “本周听歌 TOP10、累计听歌时长”,平台定期生成 “全球 / 好友榜”(如 “好友中你本周听歌时长排名第 3”)。 音乐圈:加入 “特定曲风圈子(如‘古典音乐爱好者’)”,参与 “话题讨论(如‘你心中最经典的钢琴曲’)、线上歌单共创”。 (2)音乐人端(创作者中心) 作品管理: 音乐上传:支持 “无损音频(FLAC/WAV)+ 歌词文件(LRC)+ 专辑封面” 上传,填写 “歌曲信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值