Rearranged app packages and started splitting classes
This commit is contained in:
Generated
+27
@@ -1,5 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="EntryPointsManager">
|
||||
<entry_points version="2.0" />
|
||||
</component>
|
||||
<component name="NullableNotNullManager">
|
||||
<option name="myDefaultNullable" value="android.support.annotation.Nullable" />
|
||||
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
|
||||
<option name="myNullables">
|
||||
<value>
|
||||
<list size="4">
|
||||
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
|
||||
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
|
||||
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
|
||||
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
|
||||
</list>
|
||||
</value>
|
||||
</option>
|
||||
<option name="myNotNulls">
|
||||
<value>
|
||||
<list size="4">
|
||||
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
|
||||
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
|
||||
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
|
||||
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
|
||||
</list>
|
||||
</value>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="false">
|
||||
<OptionsSetting value="true" id="Add" />
|
||||
<OptionsSetting value="true" id="Remove" />
|
||||
|
||||
@@ -82,6 +82,7 @@
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
android:label="@string/app_name"
|
||||
android:theme="@style/AppTheme">
|
||||
<activity
|
||||
android:name="uk.co.alt236.btlescan.activities.MainActivity"
|
||||
android:name=".ui.main.MainActivity"
|
||||
android:label="@string/app_name">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
@@ -26,10 +26,10 @@
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name="uk.co.alt236.btlescan.activities.DeviceDetailsActivity"
|
||||
android:name=".ui.details.DeviceDetailsActivity"
|
||||
android:label="@string/app_name">
|
||||
</activity>
|
||||
<activity android:name="uk.co.alt236.btlescan.activities.DeviceControlActivity"/>
|
||||
<activity android:name=".ui.control.DeviceControlActivity"/>
|
||||
|
||||
<service
|
||||
android:name="uk.co.alt236.btlescan.services.BluetoothLeService"
|
||||
|
||||
+5
-52
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package uk.co.alt236.btlescan.activities;
|
||||
package uk.co.alt236.btlescan.ui.control;
|
||||
|
||||
import android.bluetooth.BluetoothGattCharacteristic;
|
||||
import android.bluetooth.BluetoothGattService;
|
||||
@@ -71,6 +71,7 @@ public class DeviceControlActivity extends AppCompatActivity {
|
||||
protected TextView mDataAsString;
|
||||
@Bind(R.id.data_as_array)
|
||||
protected TextView mDataAsArray;
|
||||
private Exporter mExporter;
|
||||
private BluetoothGattCharacteristic mNotifyCharacteristic;
|
||||
private BluetoothLeService mBluetoothLeService;
|
||||
private List<List<BluetoothGattCharacteristic>> mGattCharacteristics = new ArrayList<>();
|
||||
@@ -172,7 +173,7 @@ public class DeviceControlActivity extends AppCompatActivity {
|
||||
// on the UI.
|
||||
private void displayGattServices(final List<BluetoothGattService> gattServices) {
|
||||
if (gattServices == null) return;
|
||||
generateExportString(gattServices);
|
||||
mExportString = mExporter.generateExportString(mDeviceName, mDeviceAddress, gattServices);
|
||||
|
||||
String uuid = null;
|
||||
final String unknownServiceString = getResources().getString(R.string.unknown_service);
|
||||
@@ -223,55 +224,6 @@ public class DeviceControlActivity extends AppCompatActivity {
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
private void generateExportString(final List<BluetoothGattService> gattServices) {
|
||||
final String unknownServiceString = getResources().getString(R.string.unknown_service);
|
||||
final String unknownCharaString = getResources().getString(R.string.unknown_characteristic);
|
||||
final StringBuilder exportBuilder = new StringBuilder();
|
||||
|
||||
exportBuilder.append("Device Name: ");
|
||||
exportBuilder.append(mDeviceName);
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append("Device Address: ");
|
||||
exportBuilder.append(mDeviceAddress);
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append('\n');
|
||||
|
||||
exportBuilder.append("Services:");
|
||||
exportBuilder.append("--------------------------");
|
||||
exportBuilder.append('\n');
|
||||
|
||||
String uuid = null;
|
||||
for (final BluetoothGattService gattService : gattServices) {
|
||||
uuid = gattService.getUuid().toString();
|
||||
|
||||
exportBuilder.append(GattAttributeResolver.getAttributeName(uuid, unknownServiceString));
|
||||
exportBuilder.append(" (");
|
||||
exportBuilder.append(uuid);
|
||||
exportBuilder.append(')');
|
||||
exportBuilder.append('\n');
|
||||
|
||||
final List<BluetoothGattCharacteristic> gattCharacteristics = gattService.getCharacteristics();
|
||||
for (final BluetoothGattCharacteristic gattCharacteristic : gattCharacteristics) {
|
||||
uuid = gattCharacteristic.getUuid().toString();
|
||||
|
||||
exportBuilder.append('\t');
|
||||
exportBuilder.append(GattAttributeResolver.getAttributeName(uuid, unknownCharaString));
|
||||
exportBuilder.append(" (");
|
||||
exportBuilder.append(uuid);
|
||||
exportBuilder.append(')');
|
||||
exportBuilder.append('\n');
|
||||
}
|
||||
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append('\n');
|
||||
}
|
||||
|
||||
exportBuilder.append("--------------------------");
|
||||
exportBuilder.append('\n');
|
||||
|
||||
mExportString = exportBuilder.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate(final Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
@@ -281,7 +233,6 @@ public class DeviceControlActivity extends AppCompatActivity {
|
||||
final BluetoothLeDevice device = intent.getParcelableExtra(EXTRA_DEVICE);
|
||||
mDeviceName = device.getName();
|
||||
mDeviceAddress = device.getAddress();
|
||||
|
||||
ButterKnife.bind(this);
|
||||
|
||||
// Sets up UI references.
|
||||
@@ -291,6 +242,8 @@ public class DeviceControlActivity extends AppCompatActivity {
|
||||
getSupportActionBar().setTitle(mDeviceName);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
mExporter = new Exporter(this);
|
||||
|
||||
final Intent gattServiceIntent = new Intent(this, BluetoothLeService.class);
|
||||
bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE);
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package uk.co.alt236.btlescan.ui.control;
|
||||
|
||||
import android.bluetooth.BluetoothGattCharacteristic;
|
||||
import android.bluetooth.BluetoothGattService;
|
||||
import android.content.Context;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import uk.co.alt236.bluetoothlelib.resolvers.GattAttributeResolver;
|
||||
import uk.co.alt236.btlescan.R;
|
||||
|
||||
/*package*/ class Exporter {
|
||||
private final Context mContext;
|
||||
|
||||
public Exporter(final Context context) {
|
||||
mContext = context.getApplicationContext();
|
||||
}
|
||||
|
||||
public String generateExportString(final String deviceName,
|
||||
final String deviceAddress,
|
||||
final List<BluetoothGattService> gattServices) {
|
||||
|
||||
final String unknownServiceString = mContext.getString(R.string.unknown_service);
|
||||
final String unknownCharaString = mContext.getString(R.string.unknown_characteristic);
|
||||
final StringBuilder exportBuilder = new StringBuilder();
|
||||
|
||||
exportBuilder.append("Device Name: ");
|
||||
exportBuilder.append(deviceName);
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append("Device Address: ");
|
||||
exportBuilder.append(deviceAddress);
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append('\n');
|
||||
|
||||
exportBuilder.append("Services:");
|
||||
exportBuilder.append("--------------------------");
|
||||
exportBuilder.append('\n');
|
||||
|
||||
String uuid = null;
|
||||
for (final BluetoothGattService gattService : gattServices) {
|
||||
uuid = gattService.getUuid().toString();
|
||||
|
||||
exportBuilder.append(GattAttributeResolver.getAttributeName(uuid, unknownServiceString));
|
||||
exportBuilder.append(" (");
|
||||
exportBuilder.append(uuid);
|
||||
exportBuilder.append(')');
|
||||
exportBuilder.append('\n');
|
||||
|
||||
final List<BluetoothGattCharacteristic> gattCharacteristics = gattService.getCharacteristics();
|
||||
for (final BluetoothGattCharacteristic gattCharacteristic : gattCharacteristics) {
|
||||
uuid = gattCharacteristic.getUuid().toString();
|
||||
|
||||
exportBuilder.append('\t');
|
||||
exportBuilder.append(GattAttributeResolver.getAttributeName(uuid, unknownCharaString));
|
||||
exportBuilder.append(" (");
|
||||
exportBuilder.append(uuid);
|
||||
exportBuilder.append(')');
|
||||
exportBuilder.append('\n');
|
||||
}
|
||||
|
||||
exportBuilder.append('\n');
|
||||
exportBuilder.append('\n');
|
||||
}
|
||||
|
||||
exportBuilder.append("--------------------------");
|
||||
exportBuilder.append('\n');
|
||||
|
||||
return exportBuilder.toString();
|
||||
}
|
||||
}
|
||||
+2
-1
@@ -1,4 +1,4 @@
|
||||
package uk.co.alt236.btlescan.activities;
|
||||
package uk.co.alt236.btlescan.ui.details;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
@@ -28,6 +28,7 @@ import uk.co.alt236.bluetoothlelib.resolvers.CompanyIdentifierResolver;
|
||||
import uk.co.alt236.bluetoothlelib.util.AdRecordUtils;
|
||||
import uk.co.alt236.bluetoothlelib.util.ByteUtils;
|
||||
import uk.co.alt236.btlescan.R;
|
||||
import uk.co.alt236.btlescan.ui.control.DeviceControlActivity;
|
||||
import uk.co.alt236.btlescan.util.TimeFormatter;
|
||||
|
||||
public class DeviceDetailsActivity extends AppCompatActivity {
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package uk.co.alt236.btlescan.adapters;
|
||||
package uk.co.alt236.btlescan.ui.main;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.support.v4.widget.SimpleCursorAdapter;
|
||||
@@ -17,11 +17,11 @@ import uk.co.alt236.btlescan.util.Constants;
|
||||
import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor;
|
||||
|
||||
// Adapter for holding devices found through scanning.
|
||||
public class LeDeviceListAdapter extends SimpleCursorAdapter {
|
||||
/*package*/ class DeviceListAdapter extends SimpleCursorAdapter {
|
||||
private final LayoutInflater mInflator;
|
||||
private final Activity mActivity;
|
||||
|
||||
public LeDeviceListAdapter(final Activity activity, final EasyObjectCursor<BluetoothLeDevice> cursor) {
|
||||
public DeviceListAdapter(final Activity activity, final EasyObjectCursor<BluetoothLeDevice> cursor) {
|
||||
super(activity, R.layout.list_item_device, cursor, new String[0], new int[0], 0);
|
||||
mInflator = activity.getLayoutInflater();
|
||||
mActivity = activity;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package uk.co.alt236.btlescan.activities;
|
||||
package uk.co.alt236.btlescan.ui.main;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
+8
-8
@@ -1,4 +1,4 @@
|
||||
package uk.co.alt236.btlescan.activities;
|
||||
package uk.co.alt236.btlescan.ui.main;
|
||||
|
||||
import android.Manifest;
|
||||
import android.bluetooth.BluetoothAdapter;
|
||||
@@ -22,8 +22,8 @@ import butterknife.Bind;
|
||||
import butterknife.ButterKnife;
|
||||
import uk.co.alt236.bluetoothlelib.device.BluetoothLeDevice;
|
||||
import uk.co.alt236.btlescan.R;
|
||||
import uk.co.alt236.btlescan.adapters.LeDeviceListAdapter;
|
||||
import uk.co.alt236.btlescan.containers.BluetoothLeDeviceStore;
|
||||
import uk.co.alt236.btlescan.ui.details.DeviceDetailsActivity;
|
||||
import uk.co.alt236.btlescan.util.BluetoothLeScanner;
|
||||
import uk.co.alt236.btlescan.util.BluetoothUtils;
|
||||
import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor;
|
||||
@@ -42,7 +42,7 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
|
||||
|
||||
private BluetoothUtils mBluetoothUtils;
|
||||
private BluetoothLeScanner mScanner;
|
||||
private LeDeviceListAdapter mLeDeviceListAdapter;
|
||||
private DeviceListAdapter mDeviceListAdapter;
|
||||
private BluetoothLeDeviceStore mDeviceStore;
|
||||
|
||||
private final BluetoothAdapter.LeScanCallback mLeScanCallback = new BluetoothAdapter.LeScanCallback() {
|
||||
@@ -56,8 +56,8 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mLeDeviceListAdapter.swapCursor(c);
|
||||
updateItemCount(mLeDeviceListAdapter.getCount());
|
||||
mDeviceListAdapter.swapCursor(c);
|
||||
updateItemCount(mDeviceListAdapter.getCount());
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -100,7 +100,7 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
|
||||
|
||||
@Override
|
||||
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
|
||||
final BluetoothLeDevice device = mLeDeviceListAdapter.getItem(position);
|
||||
final BluetoothLeDevice device = mDeviceListAdapter.getItem(position);
|
||||
if (device == null) return;
|
||||
|
||||
final Intent intent = new Intent(this, DeviceDetailsActivity.class);
|
||||
@@ -176,8 +176,8 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
|
||||
mDeviceStore.clear();
|
||||
updateItemCount(0);
|
||||
|
||||
mLeDeviceListAdapter = new LeDeviceListAdapter(this, mDeviceStore.getDeviceCursor());
|
||||
mList.setAdapter(mLeDeviceListAdapter);
|
||||
mDeviceListAdapter = new DeviceListAdapter(this, mDeviceStore.getDeviceCursor());
|
||||
mList.setAdapter(mDeviceListAdapter);
|
||||
|
||||
mBluetoothUtils.askUserToEnableBluetoothIfNeeded();
|
||||
if (mIsBluetoothOn && mIsBluetoothLePresent) {
|
||||
@@ -7,7 +7,7 @@
|
||||
android:paddingLeft="@dimen/activity_horizontal_margin"
|
||||
android:paddingRight="@dimen/activity_horizontal_margin"
|
||||
android:paddingTop="@dimen/activity_vertical_margin"
|
||||
tools:context=".activities.MainActivity">
|
||||
tools:context=".ui.main.MainActivity">
|
||||
|
||||
<GridLayout
|
||||
android:id="@+id/gridLayout1"
|
||||
|
||||
Reference in New Issue
Block a user