当前位置:  编程技术>移动开发
本页文章导读:
    ▪判断服务是不是启动了        判断服务是否启动了 package com.tutor.runningservice;import java.util.List;import android.app.Activity;import android.app.ActivityManager;import android.os.Bundle;import android.widget.TextView;public class RunningService extends Activity .........
    ▪ 为何申请不了google 地图 place        为何申请不了google map place Google在2010年Google I/O大会上正式宣布了Google Latitude的API,对于位置签到类服务的火热,Google并没有选择亲自杀入战场,而是通过开放API来让第三方利用Latitude平台.........
    ▪ 转:Adapter 从源头开始适配       转:Adapter 从源头开始适配! Adapter在Android中占据一个重要的角色,它是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如图1直观的表达了Data、Ad.........

[1]判断服务是不是启动了
    来源: 互联网  发布时间: 2014-02-18
判断服务是否启动了
package com.tutor.runningservice;
import java.util.List;
import android.app.Activity;
import android.app.ActivityManager;
import android.os.Bundle;
import android.widget.TextView;
public class RunningService extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        TextView mTextView = new TextView(this);
        ActivityManager mActivityManager =
        (ActivityManager)getSystemService(ACTIVITY_SERVICE);
       
        List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);
        //我要判断的服务名字,我在launcher2里加了一个音乐服务  
        final String musicClassName = "com.android.launcher2.MusicService";
             
        boolean b = MusicServiceIsStart(mServiceList, musicClassName);
    
        mTextView.setText("你要判断的服务状态为: " +b+"/n" + getServiceClassName(mServiceList));
        setContentView(mTextView);
    }
    //通过Service的类名来判断是否启动某个服务
    private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){
   
    for(int i = 0; i < mServiceList.size(); i ++){
    if(className.equals(mServiceList.get(i).service.getClassName())){
    return true;
    }
    }
    return false;
    }
    //获取所有启动的服务的类名
    private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){
    String res = "";
    for(int i = 0; i < mServiceList.size(); i ++){
    res+=mServiceList.get(i).service.getClassName()+ " /n";
    }
   
    return res;
    }
}

    
[2] 为何申请不了google 地图 place
    来源: 互联网  发布时间: 2014-02-18
为何申请不了google map place
Google在2010年Google I/O大会上正式宣布了Google Latitude的API,对于位置签到类服务的火热,Google并没有选择亲自杀入战场,而是通过开放API来让第三方利用Latitude平台来个混战。

今天Google宣布正式开放Places API申请,而第一批获得该API的公司必须是签到类服务(如果你的服务还在调用Buzz API,那获得Places API的机会就更大),这也是Google目前主攻的方向。有了Places API和Latitude API,第三方公司可以更快更方便的山寨出类似Foursquare、Gowalla和Loopt的签到服务。如果你的网站并非签到类服务,那么好需要等待一段时间等Places API完全开放之后,才可使用。

文章转载自:谷奥——探寻谷歌的奥秘 [http://www.guao.hk]

    
[3] 转:Adapter 从源头开始适配
    来源: 互联网  发布时间: 2014-02-18
转:Adapter 从源头开始适配!

Adapter在Android中占据一个重要的角色,它是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如图1直观的表达了Data、Adapter、View三者的关系。

图1 Adapter、数据、UI三者关系(PS:此图来自Google I/O)

一、Android中Adapter

 

图2:Android中Adapter类型层级图

由图2我们可以看到在Android中与Adapter有关的所有接口、类的完整层级图。在我们使用过程中可以根据自己的需求实现接口或者继承类进行一定的扩展。比较常用的有 BaseAdapter,ArrayAdapter,SimpleCursorAdapter等。

  • BaseAdapter是一个抽象类,继承它需要实现较多的方法,所以也就具有较高的灵活性;
  • ArrayAdapter支持泛型操作,通常需要实现getView方法,特殊情况下(结合数据row id),为了让ui事件相应处理方便点最好重写getItemId;
  • SimpleCursorAdapter可以适用于简单的纯文字型ListView,它需要Cursor的字段和UI的id对应起来。如需要实现更复杂的UI也可以重写其他方法。

二、一个继承BaseAdapter的类的代码段

   1: /**
   2:  * 歌曲列表适配器
   3:  * 
   4:  * @version 2010-11-24 下午05:13:33
   5:  * @author Hal
   6:  */
   7: public class AudioListAdapter extends BaseAdapter {
   8:  
   9:     private Context mContext;
  10:  
  11:     // 歌曲集合
  12:     private ArrayList<Audio> mAudios;
  13:  
  14:     public AudioListAdapter(Context mContext, ArrayList<Audio> mAudios) {
  15:         this.mContext = mContext;
  16:         this.mAudios = mAudios;
  17:     }
  18:  
  19:     @Override
  20:     public int getCount() {
  21:         return mAudios != null ? mAudios.size() : 0;
  22:     }
  23:  
  24:     @Override
  25:     public Object getItem(int position) {
  26:         if ((mAudios != null && mAudios.size() > 0) && (position >= 0 && position < mAudios.size())) {
  27:             return mAudios.get(position);
  28:         }
  29:         return null;
  30:     }
  31:  
  32:     /**
  33:      * 如果集合中的对象数据来自数据库,建议此方法返回该对象在数据库中的ID
  34:      */
  35:     @Override
  36:     public long getItemId(int position) {
  37:         if ((mAudios != null && mAudios.size() > 0) && (position >= 0 && position < mAudios.size())) {
  38:             return mAudios.get(position).getId();
  39:         }
  40:         return position;
  41:     }
  42:  
  43:     @Override
  44:     public View getView(int position, View convertView, ViewGroup parent) {
  45:         //TODO 返回自定的View
  46:     }

 


    
最新技术文章:
▪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