I'm trying to integrate Nmap and ettercap, which are unix applications, into an android app.
The problem is I don't even know how to start to do this.
If someone can tell me how can I integrate those 2 apps into my app or how can I integrate an unix app in general into my android and how should I continue from there, I would really appreciate the help.
Best regards,
Basically, you would have to compile both applications for androids arm processor (and hope that the hardware is supported).
As far as I know, there are at least implementations of tcpdump for android but paket capturing and other kinds of low level network access is something that might require root priviliges on your device.
Maybe you should also have a look at android developer forums - as there seem to be people who successfully compiled these applications for android:
http://forum.xda-developers.com/showthread.php?t=887412
Related
I intend to port a Qt desktop application to Android. It uses QSerialPort to communicate with an external device (which has a built-in CP210x)
The application, although written purely in Qt and C++, runs fine on Android, but it doesn't see the device. The CP210x official driver download page recommends to compile the kernel on Android from source, which is not feasible to expect from the average customer. Other recommendations I found online recommend jailbraking the phone, which also isn't something we could expect end users to do.
There are scant few questions in this topic on the Qt forums, most saying that QSerialPort's Android support is quite limited. However, these topics are often at least 6-7 years old.
An Android developer forum/wiki/tutorial? recommends to use "Android Things", whatever it is. I couldn't find any apps fitting that description.
I know that it's physically possible to use serial-usb on an non-jailbroken Android, as I tried out a serial console app and it worked, I could successfully exchange data with my device.
Does this mean that the only was is to develop my own wrapper in Java, and use JNIEXPORT? That would break the easy multi-platform compilation I used before (just selecting a different kit from Qt Creator) Are there any simpler ways to accomplish this? Is USB OTG usage so low that no one else thought to implement anything in this regard?
QSerialPort has only a non-official partial Android Support (see https://wiki.qt.io/Qt_Serial_Port).
(... Use on own risk, only for rooted devices, in which is it possible to get/set a permissions to the /dev/ttyXYZ nodes)
You can use JNI to get a FileDescriptor with permission and then use the libusb library in C++ to communicate with device.
But yes, it would break the easy multi-platform compilation.
I need to utilize both a barcode scanner and a USB port on something handheld. I figure a small Android Tablet is my best option.
I've spent some time researching and I cannot find anyone who has implemented a NativeScript App w/ Serial Port communication on Android.
I am concerned this means it is not possible, or prohibited for some reason.
I have the Serial Communication functional right now using Nodejs and the serialport module via NPM.
Does anyone know if this module will work in a NativeScript app?
I am going to attempt to make this work over the weekend, but before I waste a lot of time I figured I would ask in case this is simply not possible -- I've chased simple bugs for days so I could waste a long time on something that's not possible. :)
Thanks for your help!
Anything you can do with a pure Java-only app (or Swift/Object C for iOS) you can do with NativeScript as you can access all the underlining APIs. This is one of (if not the) key differences between NativeScript and other technologies. See the NativeScript docs.
Most probably, you'll want to use some third party code to communicate with the serial device (such as usb-serial-for-android). Here's a great blog post on how to use third party code in your NativeScript app.
I have a running app on fox pro which is developed using DOS. And its working very fine on the computer system. But due to the requirement of the users, now they want it to run on the android device.
So
1. Can you please tell me whether any plugin or bridge is already there in the market or should I have to develop one. I am basically looking for the bridge which can make communication between Android and fox pro. I don't know whether this is possible or not.
2. Any solution to open console in the android device where I can execute DOS commands in Android device like I do in the computer system.
Specifically I don't want for redevelopment, but if there is no way to achieve then let's see.
Apparently, you can run DOSbox under Android:
http://androiddosbox.appspot.com/
I've never tried this, but maybe it will provide what you're looking for.
Between a combination of psgsdk and Appery.io and software that helps convert screens from SCX files into Appery, this is a lot easier now. I've done this several times and have apps in both Google play and IOS app store that are FoxPro apps. The back end and all code is Visual FoxPro and the front end is Appery. #abigdreamer on twitter gets ahold of me -- let me know if I can help -- Know this post is years old but others might need the same.
I just want to know is there any way to compile and run my android application codes online, without installing the SDK on the computer ?
Thanks!
Abhinav.
Nitobi, the company behind Phonegap, has an online compiler for Phonegap applications.
It enables you to compile native applications based on HTML/Javascript, with some APIs to access device functions such as camera and accelerometer.
It supports Android, Symbian, Palm and Blackberry. It's a closed beta at the moment, but you can sign up for an invitation - apparently new users are invited weekly.
For any kind of development you will need an SDK to develop / compile the programs.
Are you looking for a Demo collection? To run these, you might try : http://developer.android.com/resources/samples/ApiDemos/
Are you looking for a way to test an app on multiple platforms? Maybe have a look at this: http://www.perfectomobile.com/portal/cms/Services/android
Not really, I don't think so. Even if there were such a location, you would not be able to use Android debugging tools, which are very handy for development.
You may want to look into App Inventor . It is probably as close to an install-free development environment as you get. Of course, it is also much more limited than native Android programs.
I have 6 months experience with Android, developing simple UI-based applications. Now I want to write applications targeting the Android core Kernel. For example, I want to develop a framework which is not present in Android. To achieve that, we have to write the code for the Kernel. I don't know where and how to start Android Kernel programming.
If anybody knows the way to start it please help me.
xda-developersA very awesome and very active place for anything smart smart phone related.
kernelnewbies
Generally good resource for starting out learning linux kernel(Which is what the android is built off of)
Building Android KernelAndroid Kernel Source
Linux kernel Online guide to driver development among many other related topics.
Update
For android source code you can check out one of the following...
or this question
or source.android.com
I personally dig this chrome plugin for browsing android source code.
If you are talking about platform level programming,i.e. framework extensions, native libraries and services there are a few places to start.
The first one is the new and updated official open source project page. The portions about contributing and porting provide some basic information on the platform architecture and what you need to work with the platform. The next step is to understand the build system for the platform and framework. There are some limited info available on the net if you google for it. The best way is probably to study some of the makefile templates available in the open source project in the build folder. For info on how to add your own modules using Android.mk files it is a good thing to study make files for existing projects such as the ones available in external in the open source projects.
Once you have gotten as far as the above. That is you know the basics of platform level development and how to build your own modules for the platform the next step is to study the framework extension example available in the open source project. Check out the vendor/sample/PlatformLibrary folder (edit, as of 2.2 the vendor stuff has moved to the device folder) in the open source project and read the readme file, study the code, build it and make sure you understand it. If you don't then JNI, shared libraries, the platform security model and the core framework are areas that could help you out.
I guess that since you are talking about kernel programming you are also looking for ways to hook up new hardware with the platform and expose that functionality using your framework extensions to the applications. Hardware is basically added as a standard Linux driver so getting it to work under Linux is a good first step. How to hook it into the Android framework after that depends on what type of hardware it is. You could either use a native process to control it (compare the camera service or radio daemon in the current platform) or just spawn a thread in the application that uses your framework extension. For hardware that does not require that much attention plugging it in using an Android HAL library could also be an option.
I hope that provides some initial pointers on where to look. The official mailing lists are otherwise the main source of info about platform level development. Especially Android porting and Android platform.
You should also check out http://pdk.android.com. I just found this site recently and it is extremely useful. I wish I knew about it sooner. I'm not sure how dedicated Google is to updating the site because as BMB mentioned the vendor stuff was moved to the device folder in 2.2 but there have been no changes to the PDK site to reflect that. Also, some of the links don't work but I was able to find all the pages by doing a site search in Google.
The best and very first place to start would be Google’s documentation on android
https://source.android.com/docs/core/architecture/kernel
Then kernel building
https://source.android.com/docs/setup/build/building-kernels
Xda isn’t so great for kernel creation but is good for kernel modification and backporting. Mostly what they do there is provide newer versions of android to older phones rom modification and changing the battery animation in the boot.img
Google also goes over the development of new things for an existing kernel.
It’s best to start at the begining,
Personally I started at xda and went backwards which took WAY longer and just complicated my setup process.