当前位置:  编程技术>移动开发
本页文章导读:
    ▪如何优化, 算术运算会如此之慢        怎么优化, 算术运算会如此之慢 游戏用lua 写的, 在brew的lua虚拟机里跑, 游戏很慢, 4~5帧, 不能忍受。 查了一下, 发现运算部分花了大部分时间, 像AI规则,碰撞检测等, 占了100多 m.........
    ▪ Foursquare 源码研究之-用户登录        Foursquare 源码研究之---------用户登录    最近学习android,无意间看到Foursquare项目,于是下载下来看看了源码,看完后避免忘记,故写下此文. 当我们拿到一个android项目,首先有机会最好是运行看看.........
    ▪ 自各儿做的软件“JustForgetMe 背单词软件”       自己做的软件“JustForgetMe 背单词软件” 自己做的软件“JustForgetMe 背单词软件” 送分!!!  http://www.eoemarket.com/apps/9576  初次发布产品,还有很多要改进的地方。不知道发哪能有更多的.........

[1]如何优化, 算术运算会如此之慢
    来源: 互联网  发布时间: 2014-02-18
怎么优化, 算术运算会如此之慢
游戏用lua 写的, 在brew的lua虚拟机里跑, 游戏很慢, 4~5帧, 不能忍受。

查了一下, 发现运算部分花了大部分时间, 像AI规则,碰撞检测等, 占了100多 ms, 加上绘制 , 总共耗掉150ms ,

为什么运算会这么慢 , lua也是封装了c而已, 它到底干了些什么? 

    
[2] Foursquare 源码研究之-用户登录
    来源: 互联网  发布时间: 2014-02-18
Foursquare 源码研究之---------用户登录

   最近学习android,无意间看到Foursquare项目,于是下载下来看看了源码,看完后避免忘记,故写下此文.

当我们拿到一个android项目,首先有机会最好是运行看看效果和Debug项目.这样有个感官的认识,.我运行后的结果:

<!--StartFragment -->

 

注意:在debug的时候需要打开fanqiang软件,否则会报一个"java.net.UnknownHostException: Host is unresolved: api.foursquare.com:443" 错误. 还需要重启模拟器. 切记.

一. 首先看看登录.

由于登录比较简单,一笔带过.

打开Mainifest.xml文件找到

<activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>

 


 这应该就是程序的入口.当然在他的外面还有application标签.先不管application标签,找到name=".MainActivity",然后可以顺势找到MainActivity.java文件.找到onCreate方法.在onCreate方法中调用了redirectToLoginActivity().此方法重定向到LoginActivity.java,打开此类会发现很简单. 主要有2个EditText.2个button,一个是log-in,另一个是signin.

他们分别对应不同的listener. 注册按钮打开浏览器注册

startActivity(new Intent( Intent.ACTION_VIEW, Uri.parse(Foursquare.FOURSQUARE_MOBILE_SIGNUP)));

 


看上面的代码,不多说,主要看登录,

 

 

mLoginTask = new LoginTask().execute();

看到上面这句话了吧,启动一个新的Task来提交请求,因为登录是把用户名和密码通过http协议传输到server进行校验,是一个比较费时的操作,为了不让UI僵死. 继续看LoginTask类,他是继承了AsyncTask类, 为什么不采用Handler+Thread呢?要用AsyncTask呢? 因为前者跑起来后就无法管理,后者是可控的 具体请参考(http://blog.163.com/android_zhouwei/blog/static/1712422672010818105241892/), 继续看代码.主要看LoginTask,有如下代码

boolean loggedIn = Preferences.loginUser(foursquare, phoneNumber, password, location, editor)

 


 此句的主要作用是用phoneNumber和password进行setCredentials.认证.foursquare中采用的Digest 认证,此种方式的认证,可以从 mHttpClient.getCredentialsProvider().setCredentials(mAuthScope, new UsernamePasswordCredentials(phone, password));


 代码中看出来,如对认证不了解请参考

(http://www.cnblogs.com/huqingyu/archive/2008/02/17/1071649.html) 有详细的介绍.

认证完之后是把user信息保存在SharedPreferences中--storeLoginAndPassword(editor, login, password); 之后调用User user = foursquare.user(null, false, false, false, location); 发送http请求,返回一个User对象,User中包含很多的属性.然后保存此user对象到SharedPreferences中.

从下图可以看出user方法的调用框架.

<!--StartFragment -->
<!--StartFragment -->
如何返回一个Exception:"com.joelapenna.foursquare.error.FoursquareCredentialsException: HTTP/1.1 401 Unauthorized",表示用户名和密码错误.
如果用户名和密码都正确则还要保存storeUser(editor, user);对象到sharedPreferences中.以便下次不用输入直接进入. 接下来再onPostExecute方法中处理返回的Result.  今天写到这里该下班了.呵呵....

1 楼 hungxn 2011-04-05  
你好,请问可以分享一下你的foursquare源码吗,我下载的gen目录下面没有R.java文件。可以的话请发送到huangxin813@163.com,先感谢一下!
2 楼 andyddd 2011-09-06  
为什么不采用Handler+Thread呢?要用AsyncTask呢? 因为前者跑起来后就无法管理,后者是可控的。
这句说的不对吧,Handler + Thread也能控制。

    
[3] 自各儿做的软件“JustForgetMe 背单词软件”
    来源: 互联网  发布时间: 2014-02-18
自己做的软件“JustForgetMe 背单词软件”
自己做的软件“JustForgetMe 背单词软件” 送分!!! 

http://www.eoemarket.com/apps/9576 

初次发布产品,还有很多要改进的地方。

不知道发哪能有更多的人下载,现在只在eoemarket里面~

大家玩玩,给点意见~

送分~~~~~~

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3