Android Open Source - konashi-android-sdk Ble Device List Adapter






From Project

Back to project page konashi-android-sdk.

License

The source code is released under:

Apache License

If you think the Android project konashi-android-sdk listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.uxxu.konashi.lib;
//from w w w.  ja v  a 2  s .  c  o  m
import java.util.ArrayList;

import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

/**
 * ?????????BLE??????????????????????????Adapter
 * 
 * @author monakaz, YUKAI Engineering
 * http://konashi.ux-xu.com
 * ========================================================================
 * Copyright 2014 Yukai Engineering Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 
 */
public class BleDeviceListAdapter extends BaseAdapter {
    /**
     * BLE????????Array
     */
    private ArrayList<BluetoothDevice> mBleDevices;
    /**
     * View???Inflater
     */
    private LayoutInflater mInflater;
    /**
     * ??????Context
     */
    private Context mContext;
    
    /**
     * ???????
     * @param context ??????Context
     */
    public BleDeviceListAdapter(Context context) {
        mContext = context;
        mBleDevices = new ArrayList<BluetoothDevice>();
    }
    
    /**
     * BLE??????????????????
     * @param device BLE???????????
     */
    public void addDevice(BluetoothDevice device) {
        if(!mBleDevices.contains(device)) {
            KonashiUtils.log("Device name: " + device.getName());
            mBleDevices.add(device);
        }
    }
    
    /**
     * BLE?????????????????????????????????
     */
    public void clearDevices(){
        mBleDevices.clear();
    }
    
    /**
     * ????????????????????BLE????????????????????
     * @param position ???????????????????
     * @return BLE???????????
     */
    public BluetoothDevice getDevice(int position) {
        return mBleDevices.get(position);
    }
    
    /**
     * BLE???????????????????
     */
    @Override
    public int getCount() {
        return mBleDevices.size();
    }

    /**
     * ??????????????BLE????????????????????
     * @param position ?????????????BLE??????????????
     */
    @Override
    public Object getItem(int position) {
        return mBleDevices.get(position);
    }

    /**
     * ????ID?????????
     * @param position ???????????????????
     */
    @Override
    public long getItemId(int position) {
        return position;
    }

    /**
     * BLE??????????????View?????
     * @param position ???????View?????????
     * @param convertView ???????????????View
     * @param parent ????View?????????ViewGroup
     */
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View v = convertView;
        
        if(v==null){
            v = LayoutInflater.from(mContext).inflate(R.layout.device_list_element, parent, false);
        }
        
        BluetoothDevice device = (BluetoothDevice)mBleDevices.get(position);
        
        String deviceName = device.getName();
        TextView name = (TextView)v.findViewById(R.id.konashi_lib_device_name);
        if (deviceName != null && deviceName.length() > 0){
            name.setText(device.getName());
        } else {
            name.setText(R.string.konashi_lib_device_list_element_unknown_device);
        }
        
        TextView address = (TextView)v.findViewById(R.id.konashi_lib_device_address);
        address.setText(device.getAddress());
        
        return v;
    }

}




Java Source Code List

com.uxxu.konashi.lib.BleDeviceListAdapter.java
com.uxxu.konashi.lib.BleDeviceSelectionDialog.java
com.uxxu.konashi.lib.KonashiActivity.java
com.uxxu.konashi.lib.KonashiApiInterface.java
com.uxxu.konashi.lib.KonashiBaseManager.java
com.uxxu.konashi.lib.KonashiErrorReason.java
com.uxxu.konashi.lib.KonashiEvent.java
com.uxxu.konashi.lib.KonashiManager.java
com.uxxu.konashi.lib.KonashiNotifier.java
com.uxxu.konashi.lib.KonashiObserver.java
com.uxxu.konashi.lib.KonashiUUID.java
com.uxxu.konashi.lib.KonashiUtils.java
com.uxxu.konashi.lib.Konashi.java
com.uxxu.konashi.sample.basic.MainActivity.java
com.uxxu.konashi.sample.input.MainActivity.java
com.uxxu.konashi.sample.multi_activity.ControllerActivity.java
com.uxxu.konashi.sample.multi_activity.MainActivity.java