AdapterApp.java revision fd1da115cbf09b7dd9bca3c7d3a4fb816a835dc5
16654f5c903de510a70f9e72cd5ad7837b615d93ffredc/*
26654f5c903de510a70f9e72cd5ad7837b615d93ffredc * Copyright (C) 2012 Google Inc.
36654f5c903de510a70f9e72cd5ad7837b615d93ffredc */
46654f5c903de510a70f9e72cd5ad7837b615d93ffredc
56654f5c903de510a70f9e72cd5ad7837b615d93ffredc/**
66654f5c903de510a70f9e72cd5ad7837b615d93ffredc * @hide
76654f5c903de510a70f9e72cd5ad7837b615d93ffredc */
86654f5c903de510a70f9e72cd5ad7837b615d93ffredc
96654f5c903de510a70f9e72cd5ad7837b615d93ffredcpackage com.android.bluetooth.btservice;
106654f5c903de510a70f9e72cd5ad7837b615d93ffredc
116654f5c903de510a70f9e72cd5ad7837b615d93ffredcimport android.app.Application;
126654f5c903de510a70f9e72cd5ad7837b615d93ffredcimport android.util.Log;
136654f5c903de510a70f9e72cd5ad7837b615d93ffredc
146654f5c903de510a70f9e72cd5ad7837b615d93ffredcpublic class AdapterApp extends Application {
156654f5c903de510a70f9e72cd5ad7837b615d93ffredc    private static final String TAG = "BluetoothAdapterApp";
16fd1da115cbf09b7dd9bca3c7d3a4fb816a835dc5Matthew Xie    private static final boolean DBG = false;
1774ae04c73312403e89db0f8e9bd9601d403b4783fredc    //For Debugging only
1874ae04c73312403e89db0f8e9bd9601d403b4783fredc    private static int sRefCount=0;
196654f5c903de510a70f9e72cd5ad7837b615d93ffredc
2031ba132491053bc86d419a7d51fc04af3299c076fredc    static {
2131ba132491053bc86d419a7d51fc04af3299c076fredc        if (DBG) Log.d(TAG,"Loading JNI Library");
2231ba132491053bc86d419a7d51fc04af3299c076fredc        System.loadLibrary("bluetooth_jni");
2331ba132491053bc86d419a7d51fc04af3299c076fredc    }
246654f5c903de510a70f9e72cd5ad7837b615d93ffredc
2574ae04c73312403e89db0f8e9bd9601d403b4783fredc    public AdapterApp() {
2674ae04c73312403e89db0f8e9bd9601d403b4783fredc        super();
2774ae04c73312403e89db0f8e9bd9601d403b4783fredc        if (DBG) {
2874ae04c73312403e89db0f8e9bd9601d403b4783fredc            synchronized (AdapterApp.class) {
2974ae04c73312403e89db0f8e9bd9601d403b4783fredc                sRefCount++;
3074ae04c73312403e89db0f8e9bd9601d403b4783fredc                Log.d(TAG, "REFCOUNT: Constructed "+ this + " Instance Count = " + sRefCount);
3174ae04c73312403e89db0f8e9bd9601d403b4783fredc            }
3274ae04c73312403e89db0f8e9bd9601d403b4783fredc        }
3374ae04c73312403e89db0f8e9bd9601d403b4783fredc    }
3474ae04c73312403e89db0f8e9bd9601d403b4783fredc
356654f5c903de510a70f9e72cd5ad7837b615d93ffredc    @Override
366654f5c903de510a70f9e72cd5ad7837b615d93ffredc    public void onCreate() {
376654f5c903de510a70f9e72cd5ad7837b615d93ffredc        super.onCreate();
386654f5c903de510a70f9e72cd5ad7837b615d93ffredc        if (DBG) Log.d(TAG, "onCreate");
39a7e8ef3f77ac74449f817f36f570a3545285be85fredc        Config.init(this);
406654f5c903de510a70f9e72cd5ad7837b615d93ffredc    }
416654f5c903de510a70f9e72cd5ad7837b615d93ffredc
426654f5c903de510a70f9e72cd5ad7837b615d93ffredc    @Override
4374ae04c73312403e89db0f8e9bd9601d403b4783fredc    protected void finalize() {
4474ae04c73312403e89db0f8e9bd9601d403b4783fredc        if (DBG) {
4574ae04c73312403e89db0f8e9bd9601d403b4783fredc            synchronized (AdapterApp.class) {
4674ae04c73312403e89db0f8e9bd9601d403b4783fredc                sRefCount--;
4774ae04c73312403e89db0f8e9bd9601d403b4783fredc                Log.d(TAG, "REFCOUNT: Finalized: " + this +", Instance Count = " + sRefCount);
4874ae04c73312403e89db0f8e9bd9601d403b4783fredc            }
4974ae04c73312403e89db0f8e9bd9601d403b4783fredc        }
506654f5c903de510a70f9e72cd5ad7837b615d93ffredc    }
516654f5c903de510a70f9e72cd5ad7837b615d93ffredc}
52