首页 > 其他 > 详细

mars视频学习进度1-关于mp3播放器的开发

时间:2014-03-11 14:10:41      阅读:423      评论:0      收藏:0      [点我收藏+]

最近遇到的问题和解决方法:

问题1:

公司上网是需要代理的,因此手机访问Tomcat的地址时异常:java.net.ConnectException:failed to connect to等乱七八糟的错误.

解决1:
a.可以先用浏览器试试能不能访问tomcat的地址,不能的话,在AVD上设置代理,设置代理的位置在设置->网络->移动网络->APN->添加新APN,名字和APN可以乱填,下面的代理和接口设置与本机一致.

b.把Tomcat的地址修改成网络地址,如百度云盘的地址等,这样主要是可以让调试的手机能访问.

 

问题2:
不能在UI线程中做一些耗时的工作,例如网络访问等,所谓UI线程,既android的主线程,包括onCreate(),onOptionsItemSelected()方法中执行的操作,也算是主线程.异常:NetworkOnMainThreadException
解决2:
利用传统的JAVA线程就能解决,此方法最简单,其他方法供参考,
 
问题3:
结合问题2导致新问题,不能在非UI线程进行更新UI的操作,异常:Only the original thread that created a view hierarchy can touch its views
解决3:
利用Handler,UI线程中new Handler,重写 handleMessage方法,子线程耗时操作结束通知UI线程更新UI.
 
2/3简代码如下:
bubuko.com,布布扣
MainActivity extends Activity
{
    Handler handler;
    onCreate()
    { 
       netWorkThread nThread=new netWorkThread()
       Thread t=new Thread();
       t.start(nThread);
        
       handler=new Handler()
       {
         @Override
         handleMessage()
         {
           //更新UI
         }
       }
    }

   class netWorkThread extends Thread
   {
      @Override
      void run()
      {
        //耗时网络访问等
        handler.sendEmptyMessage(0);//提醒UI线程进行刷新
      }
   }
}
bubuko.com,布布扣

 

mars视频学习进度1-关于mp3播放器的开发,布布扣,bubuko.com

mars视频学习进度1-关于mp3播放器的开发

原文:http://www.cnblogs.com/msony/p/3585832.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!