您的位置:首页 > 其它

小食代遇到的坑

2016-03-22 21:35 211 查看
小食代这个项目,我的想法是模仿主流的App,所以首先是

1.底部导航栏。我采用的是fragement和Radiogroup的结合来实现的。

2**viewpager的轮播图**,但是我发现原声的是非常不好用的,查询之后,我在github发现了一个很好地开源项目。引入了本地。我采用的方式是从bmob的服务器上读取数据,

遇到的第一个问题是因为我对异步和同步的理解不够深刻,从服务器上读取image的时候,发现了老是报错,说的是还没有图片就要去改变viewpager,后来用handler完美的解决,但是不知道是不是最好的办法。

遇到的第二个问题是我把图片的地址存到了bmob的一个表里,存的时候没有加“”发现客户端根本读取不了,报的错是不能解析这个网址,刚开始我傻傻的想重写inputsteram这个流。还是因为我的粗心吧,但是我又鬼使神差的打了一个log,发现了log里面的网址和服务器上的网址根本不一样。这个时候我就意识到自己的思路有偏差了。赶紧在服务器上加了一个双引号,哈哈哈,果然在本地读到了正确的网址。现在需要把双引号去掉就好了,这个soeasy。果然,之后就能访问了。

这些大概就是viewpager遇到的问题。。。。

3.状态沉浸栏,参考 之前的博客/article/9545661.html

总结:java基础知识不扎实,需要继续学习。另外看log的时候一定要学会思考。

4.关于自动更新app的方法

bmob的教程

http://docs.bmob.cn/android/autoupdate/index.html?menukey=otherdoc&key=autoupdate

一定要设置好version_i,

遇到的坑,我在真机上进行调试,然后更新的时候,发现下载后无法安装,提示包名冲突,百度之后,总结之后,发现是因为手机上装的是调试版本,没有签名。然后弄个签过名后,就成功了。

小总结:包名一定要一样,否则Android就会把它看做是俩个App,另外签名一定要一样,因为包名一样,签名不一样的话,无法安装。

5.关于引入pulltorefresh下拉刷新的第三方控件。本人使用的是Android studio,最开始以为会有远程库,却发现github上并没有。竟然连jar包都没有找到。无奈之后,只好google了一把,终于找到了一个解决办法,但是却不一定是最好的。

第一步当然是去github上下载,地址https://github.com/chrisbanes/Android-PullToRefresh

然后:

// 解压,得到 extras,sample,library(主要)

Android-PullToRefresh-master -> library

// 在你项目的根目录创建一个lib目录

[PATH]

[app]

[src]

[res]

[build]

build.gradle



[build]

[gradle]

[lib]

// 将 library 重名名为 pull

[pull]

[src]

[res]

[build]



build.gradle

settings.gradle



// 修改 settings.gradle

include ‘:app’, ‘:lib:pull’

// 修改 [app]/build.gradle

dependencies {

// Library

compile project(‘:lib:pull’)

}

// 创建 [lib]/[pull]/build.gradle

apply plugin: ‘android-library’

android {

compileSdkVersion 17

buildToolsVersion “21.1.2”

sourceSets {

main {

manifest.srcFile ‘AndroidManifest.xml’

java.srcDirs = [‘src’]

resources.srcDirs = [‘src’]

aidl.srcDirs = [‘aidl’]

renderscript.srcDirs = [‘src’]

res.srcDirs = [‘res’]

assets.srcDirs = [‘assets’]

}

}

}

之后就可以在自己的项目中引用了,新技能get。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: