亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

android實(shí)現(xiàn)藍(lán)牙文件發(fā)送的實(shí)例代碼,支持多種機(jī)型

 更新時(shí)間:2014年01月06日 15:16:40   作者:  
這篇文章主要介紹了android實(shí)現(xiàn)藍(lán)牙文件發(fā)送的實(shí)例代碼,有需要的朋友可以參考一下

最近項(xiàng)目上需要實(shí)現(xiàn)藍(lán)牙傳輸apk的一個(gè)功能,能夠搜索周?chē)乃{(lán)牙手機(jī)并分享文件。從需求上講android手機(jī)自帶的藍(lán)牙傳輸模塊就可以滿(mǎn)足需要了,實(shí)現(xiàn)也很簡(jiǎn)單。不過(guò)讓人頭疼的是,雖然說(shuō)一般的主流機(jī)型都配置有藍(lán)牙模塊,但是android機(jī)型碎片化太嚴(yán)重,不同android版本手機(jī)藍(lán)牙功能也不一樣。4.0.3以下版本和以上版本使用的藍(lán)牙包是不同的,分別是"com.android.bluetooth"和"com.mediatek.bluetooth"。還有一些廠商對(duì)藍(lán)牙模塊進(jìn)行的定制修改,比如華為的c8812。另外,android藍(lán)牙功能是api5以上才有的,所以android的minSdkVersion要不低于5才行。

網(wǎng)上很多android調(diào)用藍(lán)牙發(fā)送模塊的例子,完整并且能夠兼容多系統(tǒng)的例子很少,這里發(fā)一個(gè)我用在項(xiàng)目中的例子。

復(fù)制代碼 代碼如下:

     /**
     * 通過(guò)藍(lán)牙發(fā)送文件
     */
    private void sendFile(Activity activity) {
        PackageManager localPackageManager = activity.getPackageManager();
        Intent localIntent = null;

        HashMap<String, ActivityInfo> localHashMap = null;

        try {
            localIntent = new Intent();
            localIntent.setAction(Intent.ACTION_SEND);
            File file = new File(TAExternalOverFroyoUtils.getDiskCacheDir(this,
                    Constants.DOWNLOAD_DIR).getAbsolutePath(),
                    TextUtils.genApkName(worm.getWormid()));
            localIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
            // localIntent.putExtra(Intent.EXTRA_STREAM,
            // Uri.fromFile(new File(localApplicationInfo.sourceDir)));
            localIntent.setType("*/*");
            List<ResolveInfo> localList = localPackageManager.queryIntentActivities(
                    localIntent, 0);
            localHashMap = new HashMap<String, ActivityInfo>();
            Iterator<ResolveInfo> localIterator1 = localList.iterator();
            while (localIterator1.hasNext()) {
                ResolveInfo resolveInfo = (ResolveInfo) localIterator1.next();
                ActivityInfo localActivityInfo2 = resolveInfo.activityInfo;
                String str = localActivityInfo2.applicationInfo.processName;
                if (str.contains("bluetooth"))
                    localHashMap.put(str, localActivityInfo2);
            }
        } catch (Exception localException) {
            ToastHelper.showBlueToothSupportErr(activity);
        }
        if (localHashMap.size() == 0)
            ToastHelper.showBlueToothSupportErr(activity);
        ActivityInfo localActivityInfo1 = (ActivityInfo) localHashMap
                .get("com.android.bluetooth");
        if (localActivityInfo1 == null) {
            localActivityInfo1 = (ActivityInfo) localHashMap
                    .get("com.mediatek.bluetooth");
        }
        if (localActivityInfo1 == null) {
            Iterator<ActivityInfo> localIterator2 = localHashMap.values().iterator();
            if (localIterator2.hasNext())
                localActivityInfo1 = (ActivityInfo) localIterator2.next();
        }
        if (localActivityInfo1 != null) {
            localIntent.setComponent(new ComponentName(
                    localActivityInfo1.packageName, localActivityInfo1.name));
            activity.startActivityForResult(localIntent, 4098);
            return;
        }
        ToastHelper.showBlueToothSupportErr(activity);
    }

效果:

相關(guān)文章

  • Android本地存儲(chǔ)方法淺析介紹

    Android本地存儲(chǔ)方法淺析介紹

    這篇文章主要介紹了Android本地存儲(chǔ)案例,方法簡(jiǎn)單可以實(shí)現(xiàn)存儲(chǔ)并達(dá)到節(jié)省內(nèi)存的效果,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-10-10
  • Android自定義PopupWindow簡(jiǎn)單小例子

    Android自定義PopupWindow簡(jiǎn)單小例子

    這篇文章主要為大家詳細(xì)介紹了Android自定義PopupWindow簡(jiǎn)單小例子,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Android中TextView和ImageView實(shí)現(xiàn)傾斜效果

    Android中TextView和ImageView實(shí)現(xiàn)傾斜效果

    這篇文章主要為大家詳細(xì)介紹了Android中TextView和ImageView實(shí)現(xiàn)傾斜效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Kotlin協(xié)程概念原理與使用萬(wàn)字梳理

    Kotlin協(xié)程概念原理與使用萬(wàn)字梳理

    協(xié)程的作用是什么?協(xié)程是一種輕量級(jí)的線(xiàn)程,解決異步編程的復(fù)雜性,異步的代碼使用協(xié)程可以用順序進(jìn)行表達(dá),文中通過(guò)示例代碼介紹詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-08-08
  • Android自定義圓形倒計(jì)時(shí)進(jìn)度條

    Android自定義圓形倒計(jì)時(shí)進(jìn)度條

    這篇文章主要為大家詳細(xì)介紹了Android自定義圓形倒計(jì)時(shí)進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Android LayoutTransiton實(shí)現(xiàn)簡(jiǎn)單的錄制按鈕

    Android LayoutTransiton實(shí)現(xiàn)簡(jiǎn)單的錄制按鈕

    這篇文章主要介紹了Android LayoutTransiton實(shí)現(xiàn)簡(jiǎn)單的錄制按鈕,主要實(shí)現(xiàn)開(kāi)始,暫停,停止和顯示錄制時(shí)間長(zhǎng)度,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • 基于Android XML解析與保存的實(shí)現(xiàn)

    基于Android XML解析與保存的實(shí)現(xiàn)

    本篇文章小編為大家介紹,基于Android XML解析與保存的實(shí)現(xiàn)。需要的朋友參考下
    2013-04-04
  • Android開(kāi)發(fā)基礎(chǔ)使用ProgressBar加載進(jìn)度條示例

    Android開(kāi)發(fā)基礎(chǔ)使用ProgressBar加載進(jìn)度條示例

    這篇文章主要介紹了安卓開(kāi)發(fā)基礎(chǔ)使用ProgressBar加載進(jìn)度條示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • android實(shí)現(xiàn)簡(jiǎn)單拍照功能

    android實(shí)現(xiàn)簡(jiǎn)單拍照功能

    這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)簡(jiǎn)單拍照功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android自定義控件LinearLayout實(shí)例講解

    Android自定義控件LinearLayout實(shí)例講解

    這篇文章主要為大家詳細(xì)介紹了Android自定義控件LinearLayout實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-05-05

最新評(píng)論