From a0d3e184f948f0675672de3b853bcfc2bc292df0 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 24 Apr 2017 16:08:30 +0200 Subject: [PATCH 01/40] initial version --- .gitignore | 9 + .idea/vcs.xml | 6 + .../android_antlib_4-14-0.jar | Bin 0 -> 238103 bytes android_antlib_4-14-0/build.gradle | 2 + app/.gitignore | 1 + app/build.gradle | 32 ++ app/proguard-rules.pro | 25 ++ app/src/main/AndroidManifest.xml | 25 ++ .../dsi/ant/channel/PredefinedNetwork.java | 40 ++ .../xyz/hoyer/iconsole/ChannelController.java | 296 ++++++++++++++ .../java/xyz/hoyer/iconsole/ChannelInfo.java | 54 +++ .../java/xyz/hoyer/iconsole/ChannelList.java | 387 ++++++++++++++++++ .../xyz/hoyer/iconsole/ChannelService.java | 379 +++++++++++++++++ build.gradle | 23 ++ gradle.properties | 17 + gradlew | 160 ++++++++ gradlew.bat | 90 ++++ settings.gradle | 1 + 18 files changed, 1547 insertions(+) create mode 100644 .gitignore create mode 100644 .idea/vcs.xml create mode 100644 android_antlib_4-14-0/android_antlib_4-14-0.jar create mode 100644 android_antlib_4-14-0/build.gradle create mode 100644 app/.gitignore create mode 100644 app/build.gradle create mode 100644 app/proguard-rules.pro create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/java/com/dsi/ant/channel/PredefinedNetwork.java create mode 100644 app/src/main/java/xyz/hoyer/iconsole/ChannelController.java create mode 100644 app/src/main/java/xyz/hoyer/iconsole/ChannelInfo.java create mode 100644 app/src/main/java/xyz/hoyer/iconsole/ChannelList.java create mode 100644 app/src/main/java/xyz/hoyer/iconsole/ChannelService.java create mode 100644 build.gradle create mode 100644 gradle.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 settings.gradle diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..39fb081 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +*.iml +.gradle +/local.properties +/.idea/workspace.xml +/.idea/libraries +.DS_Store +/build +/captures +.externalNativeBuild diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/android_antlib_4-14-0/android_antlib_4-14-0.jar b/android_antlib_4-14-0/android_antlib_4-14-0.jar new file mode 100644 index 0000000000000000000000000000000000000000..062ffd9dc8d1aac4dac6e7337f01d9dd064e67c4 GIT binary patch literal 238103 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
  • w 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 ?r^os(>)fs!*^ZYbeY3NUqyHRTE)v< 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 literal 0 HcmV?d00001 diff --git a/android_antlib_4-14-0/build.gradle b/android_antlib_4-14-0/build.gradle new file mode 100644 index 0000000..04de0a9 --- /dev/null +++ b/android_antlib_4-14-0/build.gradle @@ -0,0 +1,2 @@ +configurations.maybeCreate("default") +artifacts.add("default", file('android_antlib_4-14-0.jar')) \ No newline at end of file diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +/build diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..075bcc9 --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,32 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion 24 + buildToolsVersion "25.0.0" + defaultConfig { + applicationId "xyz.hoyer.iconsole" + minSdkVersion 15 + targetSdkVersion 24 + versionCode 1 + versionName "1.0" + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } +} + +dependencies { + compile fileTree(include: ['*.jar'], dir: 'libs') + androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { + exclude group: 'com.android.support', module: 'support-annotations' + }) + compile 'com.android.support:appcompat-v7:24.2.1' + compile 'com.android.support:support-v4:24.2.1' + testCompile 'junit:junit:4.12' + compile 'com.android.support.constraint:constraint-layout:1.0.2' + provided project(':android_antlib_4-14-0') +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..4da8cc6 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,25 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /home/harald/Android/Sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..aa24833 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/dsi/ant/channel/PredefinedNetwork.java b/app/src/main/java/com/dsi/ant/channel/PredefinedNetwork.java new file mode 100644 index 0000000..24746e6 --- /dev/null +++ b/app/src/main/java/com/dsi/ant/channel/PredefinedNetwork.java @@ -0,0 +1,40 @@ +package com.dsi.ant.channel; + +/** + * Created by harald on 24.04.17. + */ + +public enum PredefinedNetwork { + INVALID(-1), + PUBLIC(0), + ANT_PLUS1(1), // + ANT_FS(2); + + private final int mRawValue; + private static final PredefinedNetwork[] sValues = values(); + + private PredefinedNetwork(int rawValue) { + this.mRawValue = rawValue; + } + + int getRawValue() { + return this.mRawValue; + } + + private boolean equals(int rawValue) { + return rawValue == this.mRawValue; + } + + static PredefinedNetwork create(int rawValue) { + PredefinedNetwork code = INVALID; + + for(int i = 0; i < sValues.length; ++i) { + if(sValues[i].equals(rawValue)) { + code = sValues[i]; + break; + } + } + + return code; + } +} diff --git a/app/src/main/java/xyz/hoyer/iconsole/ChannelController.java b/app/src/main/java/xyz/hoyer/iconsole/ChannelController.java new file mode 100644 index 0000000..57bced0 --- /dev/null +++ b/app/src/main/java/xyz/hoyer/iconsole/ChannelController.java @@ -0,0 +1,296 @@ +/* + * Copyright 2012 Dynastream Innovations 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. + */ +package xyz.hoyer.iconsole; + +import android.os.RemoteException; +import android.util.Log; + +import com.dsi.ant.channel.AntChannel; +import com.dsi.ant.channel.AntCommandFailedException; +import com.dsi.ant.channel.IAntChannelEventHandler; +import com.dsi.ant.message.ChannelId; +import com.dsi.ant.message.ChannelType; +import com.dsi.ant.message.fromant.AcknowledgedDataMessage; +import com.dsi.ant.message.fromant.BroadcastDataMessage; +import com.dsi.ant.message.fromant.ChannelEventMessage; +import com.dsi.ant.message.fromant.MessageFromAntType; +import com.dsi.ant.message.ipc.AntMessageParcel; + +import java.util.Random; + +public class ChannelController +{ + // The device type and transmission type to be part of the channel ID message + private static final int CHANNEL_PROOF_DEVICE_TYPE = 0x08; + private static final int CHANNEL_PROOF_TRANSMISSION_TYPE = 1; + + // The period and frequency values the channel will be configured to + private static final int CHANNEL_PROOF_PERIOD = 32768; // 1 Hz + private static final int CHANNEL_PROOF_FREQUENCY = 77; + + private static final String TAG = ChannelController.class.getSimpleName(); + + private static Random randGen = new Random(); + + private AntChannel mAntChannel; + private ChannelBroadcastListener mChannelBroadcastListener; + + private ChannelEventCallback mChannelEventCallback = new ChannelEventCallback(); + + private ChannelInfo mChannelInfo; + + private boolean mIsOpen; + + static public abstract class ChannelBroadcastListener + { + public abstract void onBroadcastChanged(ChannelInfo newInfo); + } + + public ChannelController(AntChannel antChannel, boolean isMaster, int deviceId, + ChannelBroadcastListener broadcastListener) + { + mAntChannel = antChannel; + mChannelInfo = new ChannelInfo(deviceId, isMaster, randGen.nextInt(256)); + mChannelBroadcastListener = broadcastListener; + + openChannel(); + } + + + boolean openChannel() + { + if(null != mAntChannel) + { + if(mIsOpen) + { + Log.w(TAG, "Channel was already open"); + } + else + { + /* + * Although this reference code sets ChannelType to either a transmitting master or a receiving slave, + * the standard for ANT is that channels communication is bidirectional. The use of single-direction + * communication in this app is for ease of understanding as reference code. For more information and + * any additional features on ANT channel communication, refer to the ANT Protocol Doc found at: + * http://www.thisisant.com/resources/ant-message-protocol-and-usage/ + */ + ChannelType channelType = (mChannelInfo.isMaster ? + ChannelType.BIDIRECTIONAL_MASTER : ChannelType.BIDIRECTIONAL_SLAVE); + + // Channel ID message contains device number, type and transmission type. In + // order for master (TX) channels and slave (RX) channels to connect, they + // must have the same channel ID, or wildcard (0) is used. + ChannelId channelId = new ChannelId(mChannelInfo.deviceNumber, + CHANNEL_PROOF_DEVICE_TYPE, CHANNEL_PROOF_TRANSMISSION_TYPE); + + try + { + // Setting the channel event handler so that we can receive messages from ANT + mAntChannel.setChannelEventHandler(mChannelEventCallback); + + // Performs channel assignment by assigning the type to the channel. Additional + // features (such as, background scanning and frequency agility) can be enabled + // by passing an ExtendedAssignment object to assign(ChannelType, ExtendedAssignment). + mAntChannel.assign(channelType); + + /* + * Configures the channel ID, messaging period and rf frequency after assigning, + * then opening the channel. + * + * For any additional ANT features such as proximity search or background scanning, refer to + * the ANT Protocol Doc found at: + * http://www.thisisant.com/resources/ant-message-protocol-and-usage/ + */ + mAntChannel.setChannelId(channelId); + mAntChannel.setPeriod(CHANNEL_PROOF_PERIOD); + mAntChannel.setRfFrequency(CHANNEL_PROOF_FREQUENCY); + mAntChannel.open(); + mIsOpen = true; + + Log.d(TAG, "Opened channel with device number: " + mChannelInfo.deviceNumber); + } catch (RemoteException e) { + channelError(e); + } catch (AntCommandFailedException e) { + // This will release, and therefore unassign if required + channelError("Open failed", e); + } + } + } + else + { + Log.w(TAG, "No channel available"); + } + + return mIsOpen; + } + + /** + * Implements the Channel Event Handler Interface so that messages can be + * received and channel death events can be handled. + */ + public class ChannelEventCallback implements IAntChannelEventHandler + { + private void updateData(byte[] data) { + mChannelInfo.broadcastData = data; + + mChannelBroadcastListener.onBroadcastChanged(mChannelInfo); + } + + @Override + public void onChannelDeath() + { + // Display channel death message when channel dies + displayChannelError("Channel Death"); + } + + @Override + public void onReceiveMessage(MessageFromAntType messageType, AntMessageParcel antParcel) { + Log.d(TAG, "Rx: "+ antParcel); + + // Switching on message type to handle different types of messages + switch(messageType) + { + // If data message, construct from parcel and update channel data + case BROADCAST_DATA: + // Rx Data + updateData(new BroadcastDataMessage(antParcel).getPayload()); + break; + case ACKNOWLEDGED_DATA: + // Rx Data + updateData(new AcknowledgedDataMessage(antParcel).getPayload()); + break; + case CHANNEL_EVENT: + // Constructing channel event message from parcel + ChannelEventMessage eventMessage = new ChannelEventMessage(antParcel); + + // Switching on event code to handle the different types of channel events + switch(eventMessage.getEventCode()) + { + case TX: + // Use old info as this is what remote device has just received + mChannelBroadcastListener.onBroadcastChanged(mChannelInfo); + + mChannelInfo.broadcastData[0]++; + + if(mIsOpen) + { + try { + // Setting the data to be broadcast on the next channel period + mAntChannel.setBroadcastData(mChannelInfo.broadcastData); + } catch (RemoteException e) { + channelError(e); + } + } + break; + case RX_SEARCH_TIMEOUT: + // TODO May want to keep searching + displayChannelError("No Device Found"); + break; + case CHANNEL_CLOSED: + case CHANNEL_COLLISION: + case RX_FAIL: + case RX_FAIL_GO_TO_SEARCH: + case TRANSFER_RX_FAILED: + case TRANSFER_TX_COMPLETED: + case TRANSFER_TX_FAILED: + case TRANSFER_TX_START: + case UNKNOWN: + // TODO More complex communication will need to handle these events + break; + } + break; + case ANT_VERSION: + case BURST_TRANSFER_DATA: + case CAPABILITIES: + case CHANNEL_ID: + case CHANNEL_RESPONSE: + case CHANNEL_STATUS: + case SERIAL_NUMBER: + case OTHER: + // TODO More complex communication will need to handle these message types + break; + } + } + } + + public ChannelInfo getCurrentInfo() + { + return mChannelInfo; + } + + void displayChannelError(String displayText) + { + mChannelInfo.die(displayText); + mChannelBroadcastListener.onBroadcastChanged(mChannelInfo); + } + + void channelError(RemoteException e) { + String logString = "Remote service communication failed."; + + Log.e(TAG, logString); + + displayChannelError(logString); + } + + void channelError(String error, AntCommandFailedException e) { + StringBuilder logString; + + if(e.getResponseMessage() != null) { + String initiatingMessageId = "0x"+ Integer.toHexString( + e.getResponseMessage().getInitiatingMessageId()); + String rawResponseCode = "0x"+ Integer.toHexString( + e.getResponseMessage().getRawResponseCode()); + + logString = new StringBuilder(error) + .append(". Command ") + .append(initiatingMessageId) + .append(" failed with code ") + .append(rawResponseCode); + } else { + String attemptedMessageId = "0x"+ Integer.toHexString( + e.getAttemptedMessageType().getMessageId()); + String failureReason = e.getFailureReason().toString(); + + logString = new StringBuilder(error) + .append(". Command ") + .append(attemptedMessageId) + .append(" failed with reason ") + .append(failureReason); + } + + Log.e(TAG, logString.toString()); + + mAntChannel.release(); + + displayChannelError("ANT Command Failed"); + } + + public void close() + { + // TODO kill all our resources + if (null != mAntChannel) + { + mIsOpen = false; + + // Releasing the channel to make it available for others. + // After releasing, the AntChannel instance cannot be reused. + mAntChannel.release(); + mAntChannel = null; + } + + displayChannelError("Channel Closed"); + } +} diff --git a/app/src/main/java/xyz/hoyer/iconsole/ChannelInfo.java b/app/src/main/java/xyz/hoyer/iconsole/ChannelInfo.java new file mode 100644 index 0000000..caf7c29 --- /dev/null +++ b/app/src/main/java/xyz/hoyer/iconsole/ChannelInfo.java @@ -0,0 +1,54 @@ +/* + * Copyright 2012 Dynastream Innovations 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. + */ +package xyz.hoyer.iconsole; + +import com.dsi.ant.message.fromant.DataMessage; + +public class ChannelInfo +{ + public final int deviceNumber; + + /** Master / Slave */ + public final boolean isMaster; + + public byte[] broadcastData = new byte[DataMessage.LENGTH_STANDARD_PAYLOAD]; + + public boolean error; + private String mErrorMessage; + + public ChannelInfo(int deviceNumber, boolean isMaster, int initialBroadcastValue) + { + this.deviceNumber = deviceNumber; + this.isMaster = isMaster; + + // Not actually concerned with this value, so can cast to byte and lose data without issues + broadcastData[0] = (byte)initialBroadcastValue; + + error = false; + mErrorMessage = null; + } + + public void die(String errorMessage) + { + error = true; + mErrorMessage = errorMessage; + } + + public String getErrorString() + { + return mErrorMessage; + } +} diff --git a/app/src/main/java/xyz/hoyer/iconsole/ChannelList.java b/app/src/main/java/xyz/hoyer/iconsole/ChannelList.java new file mode 100644 index 0000000..0106fc5 --- /dev/null +++ b/app/src/main/java/xyz/hoyer/iconsole/ChannelList.java @@ -0,0 +1,387 @@ +/* + * Copyright 2012 Dynastream Innovations 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. + */ +package xyz.hoyer.iconsole; + +import com.dsi.ant.channel.ChannelNotAvailableException; +import xyz.hoyer.iconsole.ChannelService.ChannelChangedListener; +import xyz.hoyer.iconsole.ChannelService.ChannelServiceComm; + +import android.app.Activity; +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.ServiceConnection; +import android.content.SharedPreferences; +import android.os.Bundle; +import android.os.IBinder; +import android.util.Log; +import android.util.SparseArray; +import android.view.View; +import android.view.View.OnClickListener; +import android.widget.ArrayAdapter; +import android.widget.Button; +import android.widget.CompoundButton; +import android.widget.ListView; +import android.widget.Toast; +import android.widget.ToggleButton; + +import java.util.ArrayList; + +public class ChannelList extends Activity { + private static final String TAG = ChannelList.class.getSimpleName(); + + private final String PREF_TX_BUTTON_CHECKED_KEY = "ChannelList.TX_BUTTON_CHECKED"; + private boolean mCreateChannelAsMaster; + + private ChannelServiceComm mChannelService; + + private ArrayList mChannelDisplayList = new ArrayList(); + private ArrayAdapter mChannelListAdapter; + private SparseArray mIdChannelListIndexMap = new SparseArray(); + + private boolean mChannelServiceBound = false; + + private void initButtons() + { + Log.v(TAG, "initButtons..."); + + //Register Master/Slave Toggle handler + ToggleButton toggleButton_MasterSlave = (ToggleButton)findViewById(R.id.toggleButton_MasterSlave); + toggleButton_MasterSlave.setEnabled(mChannelServiceBound); + toggleButton_MasterSlave.setChecked(mCreateChannelAsMaster); + toggleButton_MasterSlave.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() + { + @Override + public void onCheckedChanged(CompoundButton arg0, boolean enabled) + { + mCreateChannelAsMaster = enabled; + } + }); + + //Register Add Channel Button handler + Button button_addChannel = (Button)findViewById(R.id.button_AddChannel); + button_addChannel.setEnabled(mChannelServiceBound); + button_addChannel.setOnClickListener(new OnClickListener() + { + @Override + public void onClick(View v) + { + addNewChannel(mCreateChannelAsMaster); + } + }); + + //Register Clear Channels Button handler + Button button_clearChannels = (Button)findViewById(R.id.button_ClearChannels); + button_clearChannels.setEnabled(mChannelServiceBound); + button_clearChannels.setOnClickListener(new OnClickListener() + { + @Override + public void onClick(View v) + { + clearAllChannels(); + } + }); + + Log.v(TAG, "...initButtons"); + } + + private void initPrefs() + { + Log.v(TAG, "initPrefs..."); + + // Retrieves the app's current state of channel transmission mode + // from preferences to handle app resuming. + SharedPreferences preferences = getPreferences(MODE_PRIVATE); + + mCreateChannelAsMaster = preferences.getBoolean(PREF_TX_BUTTON_CHECKED_KEY, true); + + Log.v(TAG, "...initPrefs"); + } + + private void savePrefs() + { + Log.v(TAG, "savePrefs..."); + + // Saves the app's current state of channel transmission mode to preferences + SharedPreferences preferences = getPreferences(MODE_PRIVATE); + SharedPreferences.Editor editor = preferences.edit(); + + editor.putBoolean(PREF_TX_BUTTON_CHECKED_KEY, mCreateChannelAsMaster); + + editor.commit(); + + Log.v(TAG, "...savePrefs"); + } + + private void doBindChannelService() + { + Log.v(TAG, "doBindChannelService..."); + + // Binds to ChannelService. ChannelService binds and manages connection between the + // app and the ANT Radio Service + Intent bindIntent = new Intent(this, ChannelService.class); + startService(bindIntent); + mChannelServiceBound = bindService(bindIntent, mChannelServiceConnection, Context.BIND_AUTO_CREATE); + + if(!mChannelServiceBound) //If the bind returns false, run the unbind method to update the GUI + doUnbindChannelService(); + + Log.i(TAG, " Channel Service binding = "+ mChannelServiceBound); + + Log.v(TAG, "...doBindChannelService"); + } + + private void doUnbindChannelService() + { + Log.v(TAG, "doUnbindChannelService..."); + + if(mChannelServiceBound) + { + unbindService(mChannelServiceConnection); + + mChannelServiceBound = false; + } + + ((Button)findViewById(R.id.button_ClearChannels)).setEnabled(false); + ((Button)findViewById(R.id.button_AddChannel)).setEnabled(false); + ((Button)findViewById(R.id.toggleButton_MasterSlave)).setEnabled(false); + + Log.v(TAG, "...doUnbindChannelService"); + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + Log.v(TAG, "onCreate..."); + + mChannelServiceBound = false; + + setContentView(R.layout.activity_fullscreen); + + initPrefs(); + + mChannelListAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, android.R.id.text1, mChannelDisplayList); + ListView listView_channelList = (ListView)findViewById(R.id.listView_channelList); + listView_channelList.setAdapter(mChannelListAdapter); + + if(!mChannelServiceBound) doBindChannelService(); + + initButtons(); + + Log.v(TAG, "...onCreate"); + } + + public void onBack() { + finish(); + } + + @Override + public void onDestroy() + { + Log.v(TAG, "onDestroy..."); + + doUnbindChannelService(); + + if(isFinishing()) + { + stopService(new Intent(this, ChannelService.class)); + } + + mChannelServiceConnection = null; + + savePrefs(); + + Log.v(TAG, "...onDestroy"); + + super.onDestroy(); + } + + private ServiceConnection mChannelServiceConnection = new ServiceConnection() + { + @Override + public void onServiceConnected(ComponentName name, IBinder serviceBinder) + { + Log.v(TAG, "mChannelServiceConnection.onServiceConnected..."); + + mChannelService = (ChannelServiceComm) serviceBinder; + + // Sets a listener that handles channel events + mChannelService.setOnChannelChangedListener(new ChannelChangedListener() + { + // Occurs when a channel has new info/data + @Override + public void onChannelChanged(final ChannelInfo newInfo) + { + Integer index = mIdChannelListIndexMap.get(newInfo.deviceNumber); + + if(null != index && index.intValue() < mChannelDisplayList.size()) + { + mChannelDisplayList.set(index.intValue(), getDisplayText(newInfo)); + runOnUiThread(new Runnable() + { + @Override + public void run() + { + mChannelListAdapter.notifyDataSetChanged(); + } + }); + } + } + + // Updates the UI to allow/disallow acquiring new channels + @Override + public void onAllowAddChannel(boolean addChannelAllowed) { + // Enable Add Channel button and Master/Slave toggle if + // adding channels is allowed + ((Button)findViewById(R.id.button_AddChannel)).setEnabled(addChannelAllowed); + ((Button)findViewById(R.id.toggleButton_MasterSlave)).setEnabled(addChannelAllowed); + } + }); + + // Initial check when connecting to ChannelService if adding channels is allowed + boolean allowAcquireChannel = mChannelService.isAddChannelAllowed(); + ((Button)findViewById(R.id.button_AddChannel)).setEnabled(allowAcquireChannel); + ((Button)findViewById(R.id.toggleButton_MasterSlave)).setEnabled(allowAcquireChannel); + + refreshList(); + + Log.v(TAG, "...mChannelServiceConnection.onServiceConnected"); + } + + @Override + public void onServiceDisconnected(ComponentName arg0) + { + Log.v(TAG, "mChannelServiceConnection.onServiceDisconnected..."); + + // Clearing and disabling when disconnecting from ChannelService + mChannelService = null; + + ((Button)findViewById(R.id.button_ClearChannels)).setEnabled(false); + ((Button)findViewById(R.id.button_AddChannel)).setEnabled(false); + ((Button)findViewById(R.id.toggleButton_MasterSlave)).setEnabled(false); + + Log.v(TAG, "...mChannelServiceConnection.onServiceDisconnected"); + } + }; + + // This method is called when 'Add Channel' button is clicked + private void addNewChannel(final boolean isMaster) + { + Log.v(TAG, "addNewChannel..."); + + if(null != mChannelService) + { + ChannelInfo newChannelInfo; + try + { + // Telling the ChannelService to add a new channel. This method + // in ChannelService contains code required to acquire an ANT + // channel from ANT Radio Service. + newChannelInfo = mChannelService.addNewChannel(isMaster); + } catch (ChannelNotAvailableException e) + { + // Occurs when a channel is not available. Printing out the + // stack trace will show why no channels are available. + Toast.makeText(this, "Channel Not Available", Toast.LENGTH_SHORT).show(); + return; + } + + if(null != newChannelInfo) + { + // Adding new channel info to the list + addChannelToList(newChannelInfo); + mChannelListAdapter.notifyDataSetChanged(); + } + } + + Log.v(TAG, "...addNewChannel"); + } + + private void refreshList() + { + Log.v(TAG, "refreshList..."); + + if(null != mChannelService) + { + ArrayList chInfoList = mChannelService.getCurrentChannelInfoForAllChannels(); + + mChannelDisplayList.clear(); + for(ChannelInfo i: chInfoList) + { + addChannelToList(i); + } + mChannelListAdapter.notifyDataSetChanged(); + } + + Log.v(TAG, "...refreshList"); + } + + private void addChannelToList(ChannelInfo channelInfo) + { + Log.v(TAG, "addChannelToList..."); + + mIdChannelListIndexMap.put(channelInfo.deviceNumber, mChannelDisplayList.size()); + mChannelDisplayList.add(getDisplayText(channelInfo)); + + Log.v(TAG, "...addChannelToList"); + } + + + private static String getDisplayText(ChannelInfo channelInfo) + { + Log.v(TAG, "getDisplayText..."); + String displayText = null; + + if(channelInfo.error) + { + displayText = String.format("#%-6d !:%s", channelInfo.deviceNumber, channelInfo.getErrorString()); + } + else + { + if(channelInfo.isMaster) + { + displayText = String.format("#%-6d Tx:[%2d]", channelInfo.deviceNumber, channelInfo.broadcastData[0] & 0xFF); + } + else + { + displayText = String.format("#%-6d Rx:[%2d]", channelInfo.deviceNumber, channelInfo.broadcastData[0] & 0xFF); + } + } + + Log.v(TAG, "...getDisplayText"); + + return displayText; + } + + + private void clearAllChannels() + { + Log.v(TAG, "clearAllChannels..."); + + if(null != mChannelService) + { + // Telling ChannelService to close all the channels + mChannelService.clearAllChannels(); + + mChannelDisplayList.clear(); + mIdChannelListIndexMap.clear(); + mChannelListAdapter.notifyDataSetChanged(); + } + + Log.v(TAG, "...clearAllChannels"); + } +} diff --git a/app/src/main/java/xyz/hoyer/iconsole/ChannelService.java b/app/src/main/java/xyz/hoyer/iconsole/ChannelService.java new file mode 100644 index 0000000..186ce63 --- /dev/null +++ b/app/src/main/java/xyz/hoyer/iconsole/ChannelService.java @@ -0,0 +1,379 @@ +/* + * Copyright 2012 Dynastream Innovations 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. + */ +package xyz.hoyer.iconsole; + +import xyz.hoyer.iconsole.ChannelController.ChannelBroadcastListener; + +import com.dsi.ant.AntService; +import com.dsi.ant.channel.AntChannel; +import com.dsi.ant.channel.AntChannelProvider; +import com.dsi.ant.channel.ChannelNotAvailableException; +import com.dsi.ant.channel.PredefinedNetwork; + +import android.app.Service; +import android.content.BroadcastReceiver; +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.ServiceConnection; +import android.os.Binder; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.Log; +import android.util.SparseArray; + +import java.util.ArrayList; + +public class ChannelService extends Service +{ + private static final String TAG = "ChannelService"; + + private Object mCreateChannel_LOCK = new Object(); + + SparseArray mChannelControllerList = new SparseArray(); + + ChannelChangedListener mListener; + + int channelDeviceIdCounter = 0; + + private boolean mAntRadioServiceBound; + private AntService mAntRadioService = null; + private AntChannelProvider mAntChannelProvider = null; + private boolean mAllowAddChannel = false; + + private ServiceConnection mAntRadioServiceConnection = new ServiceConnection() + { + @Override + public void onServiceConnected(ComponentName name, IBinder service) + { + // Must pass in the received IBinder object to correctly construct an AntService object + mAntRadioService = new AntService(service); + + try { + // Getting a channel provider in order to acquire channels + mAntChannelProvider = mAntRadioService.getChannelProvider(); + + // Initial check for number of channels available + boolean mChannelAvailable = mAntChannelProvider.getNumChannelsAvailable() > 0; + // Initial check for if legacy interface is in use. If the + // legacy interface is in use, applications can free the ANT + // radio by attempting to acquire a channel. + boolean legacyInterfaceInUse = mAntChannelProvider.isLegacyInterfaceInUse(); + + // If there are channels OR legacy interface in use, allow adding channels + if(mChannelAvailable || legacyInterfaceInUse) { + mAllowAddChannel = true; + } + else { + // If no channels available AND legacy interface is not in use, disallow adding channels + mAllowAddChannel = false; + } + + if(mAllowAddChannel) { + if(null != mListener) { + // Send an event that indicates if adding channels is allowed + mListener.onAllowAddChannel(mAllowAddChannel); + } + } + + } catch (RemoteException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Override + public void onServiceDisconnected(ComponentName name) + { + die("Binder Died"); + + mAntChannelProvider = null; + mAntRadioService = null; + + if(mAllowAddChannel) { mListener.onAllowAddChannel(false); } + mAllowAddChannel = false; + } + + }; + + public interface ChannelChangedListener + { + /** + * Occurs when a Channel's Info has changed (i.e. a newly created + * channel, channel has transmitted or received data, or if channel has + * been closed. + * + * @param newInfo The channel's updated info + */ + void onChannelChanged(ChannelInfo newInfo); + + /** + * Occurs when there is adding a channel is being allowed or disallowed. + * + * @param addChannelAllowed True if adding channels is allowed. False, otherwise. + */ + void onAllowAddChannel(boolean addChannelAllowed); + } + + /** + * The interface used to communicate with the ChannelService + */ + public class ChannelServiceComm extends Binder + { + /** + * Sets the listener to be used for channel changed event callbacks. + * + * @param listener The listener that will receive events + */ + void setOnChannelChangedListener(ChannelChangedListener listener) + { + mListener = listener; + } + + /** + * Retrieves the current info for all channels currently added. + * + * @return A list that contains info for all the channels + */ + ArrayList getCurrentChannelInfoForAllChannels() + { + ArrayList retList = new ArrayList(); + for(int i = 0; i < mChannelControllerList.size(); i++) + { + ChannelController channel = mChannelControllerList.valueAt(i); + + retList.add(channel.getCurrentInfo()); + } + + return retList; + } + + /** + * Acquires and adds a channel from ANT Radio Service + * + * @param isMaster True if channel is transmitting, False if channel is receiving + * @return The info for the newly acquired and added channel + * @throws ChannelNotAvailableException + */ + ChannelInfo addNewChannel(final boolean isMaster) throws ChannelNotAvailableException + { + return createNewChannel(isMaster); + } + + /** + * Closes all channels currently added. + */ + void clearAllChannels() { closeAllChannels(); } + + /** + * Queries if adding a channel is allowed. + * @return True if adding a channel is allowed. False, otherwise. + */ + boolean isAddChannelAllowed() { return mAllowAddChannel; } + } + + private void closeAllChannels() + { + synchronized (mChannelControllerList) + { + // Closing all channels in the list + for(int i = 0; i < mChannelControllerList.size(); i++) + { + mChannelControllerList.valueAt(i).close(); + } + mChannelControllerList.clear(); + } + + // Reset the device id counter + channelDeviceIdCounter = 0; + } + + AntChannel acquireChannel() throws ChannelNotAvailableException + { + AntChannel mAntChannel = null; + if(null != mAntChannelProvider) + { + try + { + /* + * If applications require a channel with specific capabilities + * (event buffering, background scanning etc.), a Capabilities + * object should be created and then the specific capabilities + * required set to true. Applications can specify both required + * and desired Capabilities with both being passed in + * acquireChannel(context, PredefinedNetwork, + * requiredCapabilities, desiredCapabilities). + */ + mAntChannel = mAntChannelProvider.acquireChannel(this, PredefinedNetwork.ANT_PLUS1); + /* + NetworkKey mNK = new NetworkKey(new byte[] { (byte)0xb9, (byte)0xa5, (byte)0x21, (byte)0xfb, + (byte)0xbd, (byte)0x72, (byte)0xc3, (byte)0x45 }); + Log.v(TAG, mNK.toString()); + mAntChannel = mAntChannelProvider.acquireChannelOnPrivateNetwork(this, mNK); + */ + } catch (RemoteException e) + { + die("ACP Remote Ex"); + } + } + return mAntChannel; + } + + public ChannelInfo createNewChannel(final boolean isMaster) throws ChannelNotAvailableException + { + ChannelController channelController = null; + + synchronized(mCreateChannel_LOCK) + { + // Acquiring a channel from ANT Radio Service + AntChannel antChannel = acquireChannel(); + + if(null != antChannel) + { + + channelDeviceIdCounter += 1; + + // Constructing a controller that will manage and control the channel + channelController = new ChannelController(antChannel, isMaster, channelDeviceIdCounter, + new ChannelBroadcastListener() + { + @Override + public void onBroadcastChanged(ChannelInfo newInfo) + { + // Sending a channel changed event when message from ANT is received + mListener.onChannelChanged(newInfo); + } + }); + + mChannelControllerList.put(channelDeviceIdCounter, channelController); + } + } + + if(null == channelController) return null; + + return channelController.getCurrentInfo(); + } + + @Override + public IBinder onBind(Intent arg0) + { + return new ChannelServiceComm(); + } + + /** + * Receives AntChannelProvider state changes being sent from ANT Radio Service + */ + private final BroadcastReceiver mChannelProviderStateChangedReceiver = new BroadcastReceiver() + { + @Override + public void onReceive(Context context, Intent intent) + { + if(AntChannelProvider.ACTION_CHANNEL_PROVIDER_STATE_CHANGED.equals(intent.getAction())) { + boolean update = false; + // Retrieving the data contained in the intent + int numChannels = intent.getIntExtra(AntChannelProvider.NUM_CHANNELS_AVAILABLE, 0); + boolean legacyInterfaceInUse = intent.getBooleanExtra(AntChannelProvider.LEGACY_INTERFACE_IN_USE, false); + + if(mAllowAddChannel) { + // Was a acquire channel allowed + // If no channels available AND legacy interface is not in use, disallow acquiring of channels + if(0 == numChannels && !legacyInterfaceInUse) { + mAllowAddChannel = false; + update = true; + } + } else { + // Acquire channels not allowed + // If there are channels OR legacy interface in use, allow acquiring of channels + if(numChannels > 0 || legacyInterfaceInUse) { + mAllowAddChannel = true; + update = true; + } + } + + if(update && (null != mListener)) { + // AllowAddChannel has been changed, sending event callback + mListener.onAllowAddChannel(mAllowAddChannel); + } + } + } + }; + + private void doBindAntRadioService() + { + if(BuildConfig.DEBUG) Log.v(TAG, "doBindAntRadioService"); + + // Start listing for channel available intents + registerReceiver(mChannelProviderStateChangedReceiver, new IntentFilter(AntChannelProvider.ACTION_CHANNEL_PROVIDER_STATE_CHANGED)); + + // Creating the intent and calling context.bindService() is handled by + // the static bindService() method in AntService + mAntRadioServiceBound = AntService.bindService(this, mAntRadioServiceConnection); + } + + private void doUnbindAntRadioService() + { + if(BuildConfig.DEBUG) Log.v(TAG, "doUnbindAntRadioService"); + + // Stop listing for channel available intents + try{ + unregisterReceiver(mChannelProviderStateChangedReceiver); + } catch (IllegalArgumentException exception) { + if(BuildConfig.DEBUG) Log.d(TAG, "Attempting to unregister a never registered Channel Provider State Changed receiver."); + } + + if(mAntRadioServiceBound) + { + try + { + unbindService(mAntRadioServiceConnection); + } + catch(IllegalArgumentException e) + { + // Not bound, that's what we want anyway + } + + mAntRadioServiceBound = false; + } + } + + @Override + public void onCreate() + { + super.onCreate(); + + mAntRadioServiceBound = false; + + doBindAntRadioService(); + } + + @Override + public void onDestroy() + { + closeAllChannels(); + + doUnbindAntRadioService(); + mAntChannelProvider = null; + + super.onDestroy(); + } + + static void die(String error) + { + Log.e(TAG, "DIE: "+ error); + } + +} diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..b78a0b8 --- /dev/null +++ b/build.gradle @@ -0,0 +1,23 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:2.3.1' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..aac7c9b --- /dev/null +++ b/gradle.properties @@ -0,0 +1,17 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx1536m + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..9d82f78 --- /dev/null +++ b/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..9bca508 --- /dev/null +++ b/settings.gradle @@ -0,0 +1 @@ +include ':app', ':android_antlib_4-14-0' From 5d7317afc3569d77161198d93c1c4cf6e3d80796 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 24 Apr 2017 16:09:19 +0200 Subject: [PATCH 02/40] initial version --- .../iconsole/ExampleInstrumentedTest.java | 26 +++++++++++++++++++ .../xyz/hoyer/iconsole/ExampleUnitTest.java | 17 ++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 app/src/androidTest/java/xyz/hoyer/iconsole/ExampleInstrumentedTest.java create mode 100644 app/src/test/java/xyz/hoyer/iconsole/ExampleUnitTest.java diff --git a/app/src/androidTest/java/xyz/hoyer/iconsole/ExampleInstrumentedTest.java b/app/src/androidTest/java/xyz/hoyer/iconsole/ExampleInstrumentedTest.java new file mode 100644 index 0000000..99fcd4f --- /dev/null +++ b/app/src/androidTest/java/xyz/hoyer/iconsole/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package xyz.hoyer.iconsole; + +import android.content.Context; +import android.support.test.InstrumentationRegistry; +import android.support.test.runner.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumentation test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() throws Exception { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getTargetContext(); + + assertEquals("xyz.hoyer.iconsole", appContext.getPackageName()); + } +} diff --git a/app/src/test/java/xyz/hoyer/iconsole/ExampleUnitTest.java b/app/src/test/java/xyz/hoyer/iconsole/ExampleUnitTest.java new file mode 100644 index 0000000..ef7cca3 --- /dev/null +++ b/app/src/test/java/xyz/hoyer/iconsole/ExampleUnitTest.java @@ -0,0 +1,17 @@ +package xyz.hoyer.iconsole; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file From 103e51e4d05d9577e7bb35db95567f4940583816 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 24 Apr 2017 16:15:52 +0200 Subject: [PATCH 03/40] initial version --- .idea/compiler.xml | 22 +++++ .idea/copyright/profiles_settings.xml | 3 + .idea/encodings.xml | 6 ++ .idea/gradle.xml | 19 +++++ .idea/misc.xml | 62 ++++++++++++++ .idea/modules.xml | 10 +++ .idea/runConfigurations.xml | 12 +++ .../main/res/layout/activity_fullscreen.xml | 77 ++++++++++++++++++ app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3418 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2206 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4842 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7718 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10486 bytes app/src/main/res/values/attrs.xml | 12 +++ app/src/main/res/values/colors.xml | 8 ++ app/src/main/res/values/strings.xml | 6 ++ app/src/main/res/values/styles.xml | 23 ++++++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 53636 bytes gradle/wrapper/gradle-wrapper.properties | 6 ++ 19 files changed, 266 insertions(+) create mode 100644 .idea/compiler.xml create mode 100644 .idea/copyright/profiles_settings.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/gradle.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/runConfigurations.xml create mode 100644 app/src/main/res/layout/activity_fullscreen.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 app/src/main/res/values/attrs.xml create mode 100644 app/src/main/res/values/colors.xml create mode 100644 app/src/main/res/values/strings.xml create mode 100644 app/src/main/res/values/styles.xml create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..96cc43e --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml new file mode 100644 index 0000000..e7bedf3 --- /dev/null +++ b/.idea/copyright/profiles_settings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..97626ba --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..77aea55 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..6e98582 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Android API 24 Platform + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..0f55dd2 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..7f68460 --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,12 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_fullscreen.xml b/app/src/main/res/layout/activity_fullscreen.xml new file mode 100644 index 0000000..5c63f7d --- /dev/null +++ b/app/src/main/res/layout/activity_fullscreen.xml @@ -0,0 +1,77 @@ + + + + + + + + +