Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
update version
still beta
  • Loading branch information
ebc81 committed Nov 25, 2015
1 parent 9107e86 commit 37b6380
Show file tree
Hide file tree
Showing 25 changed files with 158 additions and 2,158 deletions.
2 changes: 0 additions & 2 deletions Rtl_Ais_Android.iml
Expand Up @@ -9,8 +9,6 @@
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
<output url="file://$MODULE_DIR$/build" />
<output-test url="file://$MODULE_DIR$/build" />
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
Expand Down
11 changes: 2 additions & 9 deletions app/app.iml
Expand Up @@ -64,26 +64,19 @@
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/coverage-instrumented-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/debug" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.0/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/23.0.0/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jacoco" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaResources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/libs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/ndk" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/tmp" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
</content>
Expand Down
9 changes: 6 additions & 3 deletions app/src/main/AndroidManifest.xml
Expand Up @@ -2,8 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.wordpress.ebc81.rtl_ais_android"
android:installLocation="internalOnly"
android:versionCode="1"
android:versionName="0.1" >
android:versionCode="2"
android:versionName="0.2" >

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
Expand All @@ -19,7 +19,9 @@
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".DeviceOpenActivity"
android:name="com.wordpress.ebc81.rtl_ais_android.DeviceOpenActivity"
android:theme="@android:style/Theme.Dialog"

android:label="@string/app_name"
android:exported="true">
<intent-filter>
Expand All @@ -43,6 +45,7 @@
<service
android:name=".tools.BinaryRunnerService"
android:exported="false" />

</application>

</manifest>
Expand Up @@ -40,10 +40,12 @@
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.util.Log;

import com.wordpress.ebc81.rtl_ais_android.core.RtlException;
import com.wordpress.ebc81.rtl_ais_android.tools.BinaryRunnerService;
import com.wordpress.ebc81.rtl_ais_android.tools.BinaryRunnerService.LocalBinder;
import com.wordpress.ebc81.rtl_ais_android.tools.CmdLineHelper;
import com.wordpress.ebc81.rtl_ais_android.tools.DialogManager;
import com.wordpress.ebc81.rtl_ais_android.tools.LogRtlAis;
import com.wordpress.ebc81.rtl_ais_android.tools.RtlStartException;
Expand Down Expand Up @@ -78,6 +80,7 @@ public void onServiceConnected(ComponentName name, IBinder service) {
mService = binder.getService(DeviceOpenActivity.this);
mBound = true;
mService.start(args, fd, uspfs_path);

}

@Override
Expand All @@ -87,7 +90,7 @@ public void onServiceDisconnected(ComponentName name) {
}
};

//@SuppressLint("NewApi")
//
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand All @@ -99,17 +102,20 @@ protected void onCreate(Bundle savedInstanceState) {
StrRes.res = getResources();

final Uri data = getIntent().getData();
arguments = data.toString().replace(getString(R.string.intent_filter_schema)+"://", ""); // quick and dirty fix; me don't like it
arguments = data.toString().replace(getString(R.string.intent_filter_schema) + "://", ""); // quick and dirty fix; me don't like it

Log.i("TEST", "onCreate");

intent = getIntent();

}


@Override
protected void onStart() {
super.onStart();

/**
*
*/
private void doUSBBasic()
{
try {
permissionIntent = PendingIntent.getBroadcast(this, 0, new Intent("com.android.example.USB_PERMISSION"), 0);
registerReceiver(mUsbReceiver, new IntentFilter("com.android.example.USB_PERMISSION"));
Expand All @@ -134,14 +140,29 @@ protected void onStart() {
} catch (Exception e) {
finishWithError(e);
}
}




@Override
protected void onStart() {
super.onStart();
Log.i("TEST", "onStart");
doUSBBasic();
}

@Override
protected void onDestroy() {
super.onDestroy();
Log.i("TEST", "onDestroy");
}


@Override
protected void onStop() {
super.onStop();

Log.i("TEST", "onStop");
try {
unregisterReceiver(mUsbReceiver);
} catch (Throwable e) {};
Expand All @@ -153,6 +174,11 @@ protected void onStop() {
}
}

/**
*
* @param id
* @param args
*/
public void showDialog(final DialogManager.dialogs id, final String ... args) {

final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
Expand Down Expand Up @@ -231,10 +257,11 @@ public void openDeviceUsingRoot() {


/**
* Starts the tcp binary
* Starts the rtl ais binary
*/
public void startBinary(final String arguments, final int fd, final String uspfs_path) {
try {
Log.v("TEST", "startBinary");
//start the service
this.args = arguments;
this.fd = fd;
Expand Down
Expand Up @@ -139,7 +139,7 @@ public static void start(final String args, final int fd, final String uspfs_pat
close();
try {
synchronized (locker) {
locker.wait(5000);
locker.wait(4000);
}
} catch (InterruptedException e) {}

Expand Down
Expand Up @@ -78,10 +78,58 @@ public int onStartCommand(Intent intent, int flags, int startId) {
return START_STICKY;
}

public boolean isRunning()
{
return RtlAisJava.isNativeRunning();
}


/**
* Makes a pre-filtering of Intent cmds
*/
/*
private void preSelectAction()
{
int cmd = CmdLineHelper.getCmd(arguments);
switch ( cmd )
{
case CmdLineHelper.RTL_AIS_ANDROID_CMD_STATUS:
Log.i("TEST", "RTL_AIS_ANDROID_CMD_STATUS");
if (mBound && mService != null && mService.isRunning() )
finishWithError(RtlStartException.err_info.not_running);
else
finishWithError();
break;
// not really necessary but anyway could be useful for someone
case CmdLineHelper.RTL_AIS_ANDROID_CMD_STOP:
Log.i("TEST", "RTL_AIS_ANDROID_CMD_STOP mbound = " + mBound );
if (mBound && mService != null && mService.isRunning() ) {
mService.stop();
}
try {
Thread.sleep(500);
} catch (Throwable t) {}
finish();
break;
case CmdLineHelper.RTL_AIS_ANDROID_CMD_START:
Log.i("TEST", "RTL_AIS_ANDROID_CMD_START");
doUSBBasic();
break;
default:
case CmdLineHelper.RTL_AIS_ANDROID_CMD_UNKNOWN:
break;
}
}*/



public void start(final String args, final int fd, final String uspfs_path) {
try {

//Log.i(TAG, "--------------------Rtl Ais driver START");
//Log.i(TAG, "--------------------Rtl Ais driver START with arugumets="+ args);

if (args == null) {
LogRtlAis.appendLine("Service did receive null argument.");
Expand All @@ -90,14 +138,34 @@ public void start(final String args, final int fd, final String uspfs_path) {
return;
}

if ( args.equals("-exit") ) {
//Log.i(TAG, "Rtl Ais driver will be closed");
LogRtlAis.appendLine("Service did receive exit argument");
stopForeground(true);
System.exit(0);
return;
int cmd = CmdLineHelper.getCmd(args);
switch ( cmd )
{
case CmdLineHelper.RTL_AIS_ANDROID_CMD_STATUS:
if ( RtlAisJava.isNativeRunning()) {
for (final ExceptionListener listener : exception_listeners)
listener.onStarted();
}
else {
final Exception e = new Exception("Service is stopped");
for (final ExceptionListener listener : exception_listeners)
listener.onException(e);
}
return;

case CmdLineHelper.RTL_AIS_ANDROID_CMD_STOP:
RtlAisJava.stop();
try {
Thread.sleep(2000);
} catch (Throwable t) {}
stopForeground(true);
System.exit(0);
return;
}




accummulated_errors.clear();

if (RtlAisJava.isNativeRunning()) {
Expand Down Expand Up @@ -145,16 +213,18 @@ public void OnClosed(int exitvalue, final RtlException e) {
else
LogRtlAis.appendLine("Exit code: " + exitvalue + "\n");

for (final ExceptionListener listener : exception_listeners) listener.onException(e);
for (final ExceptionListener listener : exception_listeners)
listener.onException(e);
if (e != null) accummulated_errors.add(e);

stopSelf();
}

@Override
public void OnOpened() {
for (final ExceptionListener listener : exception_listeners) listener.onStarted();
LogRtlAis.announceStateChanged(true);
for (final ExceptionListener listener : exception_listeners)
listener.onStarted();
LogRtlAis.announceStateChanged(true);
}


Expand Down
@@ -0,0 +1,27 @@
package com.wordpress.ebc81.rtl_ais_android.tools;

/**
* Created by ebc on 27.08.2015.
*/
public class CmdLineHelper {

public static final int RTL_AIS_ANDROID_CMD_START = 1;
public static final int RTL_AIS_ANDROID_CMD_STOP = 2;
public static final int RTL_AIS_ANDROID_CMD_STATUS = 3;
public static final int RTL_AIS_ANDROID_CMD_UNKNOWN = 4;

public static final String exit_argument = "-exit";
public static final String status_argument = "-status";

public static int getCmd(String argument)
{
if (argument.isEmpty())
return RTL_AIS_ANDROID_CMD_UNKNOWN;
if ( argument.equals(exit_argument) )
return RTL_AIS_ANDROID_CMD_STOP;
if ( argument.equals(status_argument))
return RTL_AIS_ANDROID_CMD_STATUS;
return RTL_AIS_ANDROID_CMD_START;

}
}
Expand Up @@ -30,7 +30,8 @@ public enum err_info {
no_devices_found,
unknown_error,
replug,
already_running
already_running,
not_running,
}

//private static final long serialVersionUID = -2093258176426113336L;
Expand Down

0 comments on commit 37b6380

Please sign in to comment.