Rearranged app packages and started splitting classes

This commit is contained in:
Alexandros Schillings
2016-08-24 16:23:22 +01:00
parent ec33fd7618
commit 54d0caf6c8
10 changed files with 121 additions and 69 deletions
+27
View File
@@ -1,5 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <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"> <component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" /> <OptionsSetting value="true" id="Add" />
<OptionsSetting value="true" id="Remove" /> <OptionsSetting value="true" id="Remove" />
+1
View File
@@ -82,6 +82,7 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> <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/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> <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/bundles" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
+3 -3
View File
@@ -17,7 +17,7 @@
android:label="@string/app_name" android:label="@string/app_name"
android:theme="@style/AppTheme"> android:theme="@style/AppTheme">
<activity <activity
android:name="uk.co.alt236.btlescan.activities.MainActivity" android:name=".ui.main.MainActivity"
android:label="@string/app_name"> android:label="@string/app_name">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN"/> <action android:name="android.intent.action.MAIN"/>
@@ -26,10 +26,10 @@
</intent-filter> </intent-filter>
</activity> </activity>
<activity <activity
android:name="uk.co.alt236.btlescan.activities.DeviceDetailsActivity" android:name=".ui.details.DeviceDetailsActivity"
android:label="@string/app_name"> android:label="@string/app_name">
</activity> </activity>
<activity android:name="uk.co.alt236.btlescan.activities.DeviceControlActivity"/> <activity android:name=".ui.control.DeviceControlActivity"/>
<service <service
android:name="uk.co.alt236.btlescan.services.BluetoothLeService" android:name="uk.co.alt236.btlescan.services.BluetoothLeService"
@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package uk.co.alt236.btlescan.activities; package uk.co.alt236.btlescan.ui.control;
import android.bluetooth.BluetoothGattCharacteristic; import android.bluetooth.BluetoothGattCharacteristic;
import android.bluetooth.BluetoothGattService; import android.bluetooth.BluetoothGattService;
@@ -71,6 +71,7 @@ public class DeviceControlActivity extends AppCompatActivity {
protected TextView mDataAsString; protected TextView mDataAsString;
@Bind(R.id.data_as_array) @Bind(R.id.data_as_array)
protected TextView mDataAsArray; protected TextView mDataAsArray;
private Exporter mExporter;
private BluetoothGattCharacteristic mNotifyCharacteristic; private BluetoothGattCharacteristic mNotifyCharacteristic;
private BluetoothLeService mBluetoothLeService; private BluetoothLeService mBluetoothLeService;
private List<List<BluetoothGattCharacteristic>> mGattCharacteristics = new ArrayList<>(); private List<List<BluetoothGattCharacteristic>> mGattCharacteristics = new ArrayList<>();
@@ -172,7 +173,7 @@ public class DeviceControlActivity extends AppCompatActivity {
// on the UI. // on the UI.
private void displayGattServices(final List<BluetoothGattService> gattServices) { private void displayGattServices(final List<BluetoothGattService> gattServices) {
if (gattServices == null) return; if (gattServices == null) return;
generateExportString(gattServices); mExportString = mExporter.generateExportString(mDeviceName, mDeviceAddress, gattServices);
String uuid = null; String uuid = null;
final String unknownServiceString = getResources().getString(R.string.unknown_service); final String unknownServiceString = getResources().getString(R.string.unknown_service);
@@ -223,55 +224,6 @@ public class DeviceControlActivity extends AppCompatActivity {
invalidateOptionsMenu(); 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 @Override
public void onCreate(final Bundle savedInstanceState) { public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@@ -281,7 +233,6 @@ public class DeviceControlActivity extends AppCompatActivity {
final BluetoothLeDevice device = intent.getParcelableExtra(EXTRA_DEVICE); final BluetoothLeDevice device = intent.getParcelableExtra(EXTRA_DEVICE);
mDeviceName = device.getName(); mDeviceName = device.getName();
mDeviceAddress = device.getAddress(); mDeviceAddress = device.getAddress();
ButterKnife.bind(this); ButterKnife.bind(this);
// Sets up UI references. // Sets up UI references.
@@ -291,6 +242,8 @@ public class DeviceControlActivity extends AppCompatActivity {
getSupportActionBar().setTitle(mDeviceName); getSupportActionBar().setTitle(mDeviceName);
getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true);
mExporter = new Exporter(this);
final Intent gattServiceIntent = new Intent(this, BluetoothLeService.class); final Intent gattServiceIntent = new Intent(this, BluetoothLeService.class);
bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE); 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();
}
}
@@ -1,4 +1,4 @@
package uk.co.alt236.btlescan.activities; package uk.co.alt236.btlescan.ui.details;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; 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.AdRecordUtils;
import uk.co.alt236.bluetoothlelib.util.ByteUtils; import uk.co.alt236.bluetoothlelib.util.ByteUtils;
import uk.co.alt236.btlescan.R; import uk.co.alt236.btlescan.R;
import uk.co.alt236.btlescan.ui.control.DeviceControlActivity;
import uk.co.alt236.btlescan.util.TimeFormatter; import uk.co.alt236.btlescan.util.TimeFormatter;
public class DeviceDetailsActivity extends AppCompatActivity { public class DeviceDetailsActivity extends AppCompatActivity {
@@ -1,4 +1,4 @@
package uk.co.alt236.btlescan.adapters; package uk.co.alt236.btlescan.ui.main;
import android.app.Activity; import android.app.Activity;
import android.support.v4.widget.SimpleCursorAdapter; import android.support.v4.widget.SimpleCursorAdapter;
@@ -17,11 +17,11 @@ import uk.co.alt236.btlescan.util.Constants;
import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor; import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor;
// Adapter for holding devices found through scanning. // Adapter for holding devices found through scanning.
public class LeDeviceListAdapter extends SimpleCursorAdapter { /*package*/ class DeviceListAdapter extends SimpleCursorAdapter {
private final LayoutInflater mInflator; private final LayoutInflater mInflator;
private final Activity mActivity; 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); super(activity, R.layout.list_item_device, cursor, new String[0], new int[0], 0);
mInflator = activity.getLayoutInflater(); mInflator = activity.getLayoutInflater();
mActivity = activity; mActivity = activity;
@@ -1,4 +1,4 @@
package uk.co.alt236.btlescan.activities; package uk.co.alt236.btlescan.ui.main;
import android.app.Activity; import android.app.Activity;
import android.app.Dialog; import android.app.Dialog;
@@ -1,4 +1,4 @@
package uk.co.alt236.btlescan.activities; package uk.co.alt236.btlescan.ui.main;
import android.Manifest; import android.Manifest;
import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothAdapter;
@@ -22,8 +22,8 @@ import butterknife.Bind;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import uk.co.alt236.bluetoothlelib.device.BluetoothLeDevice; import uk.co.alt236.bluetoothlelib.device.BluetoothLeDevice;
import uk.co.alt236.btlescan.R; 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.containers.BluetoothLeDeviceStore;
import uk.co.alt236.btlescan.ui.details.DeviceDetailsActivity;
import uk.co.alt236.btlescan.util.BluetoothLeScanner; import uk.co.alt236.btlescan.util.BluetoothLeScanner;
import uk.co.alt236.btlescan.util.BluetoothUtils; import uk.co.alt236.btlescan.util.BluetoothUtils;
import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor; import uk.co.alt236.easycursor.objectcursor.EasyObjectCursor;
@@ -42,7 +42,7 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
private BluetoothUtils mBluetoothUtils; private BluetoothUtils mBluetoothUtils;
private BluetoothLeScanner mScanner; private BluetoothLeScanner mScanner;
private LeDeviceListAdapter mLeDeviceListAdapter; private DeviceListAdapter mDeviceListAdapter;
private BluetoothLeDeviceStore mDeviceStore; private BluetoothLeDeviceStore mDeviceStore;
private final BluetoothAdapter.LeScanCallback mLeScanCallback = new BluetoothAdapter.LeScanCallback() { private final BluetoothAdapter.LeScanCallback mLeScanCallback = new BluetoothAdapter.LeScanCallback() {
@@ -56,8 +56,8 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
mLeDeviceListAdapter.swapCursor(c); mDeviceListAdapter.swapCursor(c);
updateItemCount(mLeDeviceListAdapter.getCount()); updateItemCount(mDeviceListAdapter.getCount());
} }
}); });
} }
@@ -100,7 +100,7 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
@Override @Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) { 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; if (device == null) return;
final Intent intent = new Intent(this, DeviceDetailsActivity.class); final Intent intent = new Intent(this, DeviceDetailsActivity.class);
@@ -176,8 +176,8 @@ public class MainActivity extends AppCompatActivity implements AdapterView.OnIte
mDeviceStore.clear(); mDeviceStore.clear();
updateItemCount(0); updateItemCount(0);
mLeDeviceListAdapter = new LeDeviceListAdapter(this, mDeviceStore.getDeviceCursor()); mDeviceListAdapter = new DeviceListAdapter(this, mDeviceStore.getDeviceCursor());
mList.setAdapter(mLeDeviceListAdapter); mList.setAdapter(mDeviceListAdapter);
mBluetoothUtils.askUserToEnableBluetoothIfNeeded(); mBluetoothUtils.askUserToEnableBluetoothIfNeeded();
if (mIsBluetoothOn && mIsBluetoothLePresent) { if (mIsBluetoothOn && mIsBluetoothLePresent) {
@@ -7,7 +7,7 @@
android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".activities.MainActivity"> tools:context=".ui.main.MainActivity">
<GridLayout <GridLayout
android:id="@+id/gridLayout1" android:id="@+id/gridLayout1"