I have begun incorporating the Symja CAS into the Calculus Tools application. This should make the application much more powerful, stable and bring some great features like symbolic integration to the application. Unfortunately, this will be rather time-consuming, and updates for Calculus Tools will probably be far off. It should prove to be well worth the wait though.
Progress may be tracked through at http://code.google.com/p/android-symja/. Expect the first code check-in this weekend.
Andrew McSherry's blog about tech-related stuff that really needs to be updated more often :)
Tuesday, November 16, 2010
Thursday, November 4, 2010
Cupcake and Donut Compatibility Part I (The Invisible View Conundrum)
Android 1.5 (Cupcake) is a total nightmare to design for. 1.6 (Donut) is not a whole lot of fun either. Fortunately, Cupcake has dropped to about 8% of the current Android population, and Donut is at 16%. Unfortunately, to target Eclair, one is losing out on nearly a quarter of the possible users on the market. Furthermore, since these users have almost no one releasing apps for them, they are more likely to use your app because it is their only option.
In Part I of the Compatibility series, I will demonstrate a work around for a disaster that happens one sets a View of a RelativeLayout invisible in Android 1.5
Now, suppose you three views in a RelativeLayout. For example:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas. android.com/apk/res/android"
android:layout_width="fill_ parent"
android:layout_height="fill_ parent"
>
<TextView
android:id="@+id/TextView1"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView1"
/>
<TextView
android:id="@+id/TextView2"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView2"
android:layout_below="@id/ TextView1"
/>
<TextView
android:id="@+id/TextView3"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView3"
android:layout_below="@id/ TextView2"
/>
</RelativeLayout>
This should look like
Now, suppose you want to set TextView2's visibility to View.GONE with
findViewById(R.id.TextView2).setVisibility(View.GONE);
Cupcake will give you this wonderful view:
Now, in subsequent versions of Android, this will show up like this:
The trick to get this sort of implementation in Cupcake is to wrap TextView2 in a descendant of ViewGroup, (AbsoluteLayout, LinearLayout, RelativeLayout, etc.). The code below uses LinearLayout to serve as a wrapper for the invisible TextView2.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas. android.com/apk/res/android"
android:layout_width="fill_ parent"
android:layout_height="fill_ parent"
>
<TextView
android:id="@+id/TextView1"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView1"
/>
<LinearLayout
android:id="@+id/ViewGroup1"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:layout_below="@id/ TextView1">
<TextView
android:id="@+id/TextView2"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView2"
/>
</LinearLayout>
<TextView
android:id="@+id/TextView3"
android:layout_width="fill_ parent"
android:layout_height="wrap_ content"
android:text="TextView3"
android:layout_below="@id/ ViewGroup1"
/>
</RelativeLayout>
The problem exists because in Android 1.5, when TextView 2 is removed from the view, TextView3 is now asking the RelativeLayout to put it below a view that doesn't exist. Thus, RelativeLayout, instead of crashing puts it in the default top-left corner. In the code directly above, there is no view that references TextView2 to find it's layout. ViewGroup1's height is set to wrap_content so when TextView2 disappears, ViewGroup1 no longer has any elements. Thus, it collapses to 0px in height and TextView3 lies directly below TextView1.
This issue was corrected in Android 1.6.
Application Install to SD Card
As many of you know, a great feature included with Android 2.2 is the ability to install apps to the SD card. Most Android phones have a limited amount of ROM, which is used for system files, text messages, emails, applications, etc. All applications that do not implement services, Fortunately, this is an extremely easy feature to implement in an application, and it done while being compatible with previous versions of Android.
In the manifest tag of the Android Manifest, simply add the attribute
Now, some may be hesitant to constantly compile their application against a newer version because they may accidentally overlook the use of a newer API that may crash the application at runtime. This can be circumvented by loading all your class and resource files into a separate library project which compiles against the older SDK and importing it into your main project. In your main project, all that is needed is a manifest.
If you already have Android library files, this should not be an issue as with the recent SDK tools (r7), Android libraries may now import Android library themselves.
In the manifest tag of the Android Manifest, simply add the attribute
android:installLocation="auto"to the Manifest tag. Now, in order for this to compile you must use the Android 2.2 SDK. In order to ensure backwards compatibility, make sure to set your minimum SDK requirement to whichever SDK the rest of your application will work for. When the application is loaded on an older version of Android than Froyo, this tag will simply be overlooked.
Now, some may be hesitant to constantly compile their application against a newer version because they may accidentally overlook the use of a newer API that may crash the application at runtime. This can be circumvented by loading all your class and resource files into a separate library project which compiles against the older SDK and importing it into your main project. In your main project, all that is needed is a manifest.
If you already have Android library files, this should not be an issue as with the recent SDK tools (r7), Android libraries may now import Android library themselves.
Tuesday, November 2, 2010
Calculus Tools 1.2
Sorry for the late change-log.
New additions in 1.2:
Support for piece-wise functions (see help section for details)
Experimental 3D graph controls
Plenty more Bug Fixes and Bugs
New additions in 1.2:
Support for piece-wise functions (see help section for details)
Experimental 3D graph controls
Plenty more Bug Fixes and Bugs
Wednesday, October 20, 2010
Rated 3rd Best Calculator App on getele.com
This is kind of an old article, but I came across it today. Another listing has posted Calculus Tools as being the 3rd best calculator app on Android
http://www.getele.com/technology/top-3-calculator-apps-for-your-android-phone.html
http://www.getele.com/technology/top-3-calculator-apps-for-your-android-phone.html
Sunday, October 10, 2010
Updates should be coming soon
I wanted to apologize for the lack of updates lately. I know a couple of you have requested features, but I have yet to post them. Most requests have been implemented and are ready to ship out. The only issue at the moment is I am having quite a bit of trouble getting the touch controls right for the 3d-graphing. Because of the popularity of this request, I am very hesitant to release sub-par version of this. I know that a sub-par version would be probably more welcome to you than the current lack of the feature entirely, but I know I have released poor updates in the past. I have been trying not to do this anymore. Please know that an update should be posted soon, even if I have to disable the touch controls for the time being.
Tuesday, September 14, 2010
Calculus Tools 1.1.3
New in update 1.1.3
Full Italian Translations
Some very minor Polish translations
Ability to add specific functions to your launcher/app drawer. Currently supported are Calculator, Graph, Integration, Derivative and Formula Tables. Calculator and Graph are activated by default. Adjustment is available under Options.
Full Italian Translations
Some very minor Polish translations
Ability to add specific functions to your launcher/app drawer. Currently supported are Calculator, Graph, Integration, Derivative and Formula Tables. Calculator and Graph are activated by default. Adjustment is available under Options.
Tuesday, September 7, 2010
Fully Functional PC
Woot! PC is now working again. Stay tuned for an update to fix some frustrating bugs I'm sure you have encountered.
Sunday, September 5, 2010
Italian Translations
I would like to send a big thanks to Gabriele and the Italian AndDev translation team for translating my app into Italian. The translation will be posted as soon as I get my computer up and running again (see post below).
Thursday, September 2, 2010
Computer Issues
I somehow have managed to rip the power jack out of my computer. Unfortunately, this means I will not be able to put out any updates until I get a new part ordered. I am sorry for the delay as I know I broke a couple features with the last update.
Thanks for your understanding,
Andy
Thanks for your understanding,
Andy
Tuesday, August 31, 2010
graph bug
all, i am aware of the force close issue with the graph. it will be fixed tonight.
thanks,
andy
thanks,
andy
Sunday, August 15, 2010
Thursday, August 12, 2010
Open Source
The Calculus Tools application has been open-sourced at calculus-tools.googlecode.com under the Apache 2.0 License.
Tuesday, August 10, 2010
Double Integration Timeout
I have received several reports of users claiming the application crashed during double integration. If you are using a phone pre-Froyo, there may be a chance that the application will take a long time to calculate--as much as 30 seconds if you are using a low-end phone with a complex function. If a process has not finished, Android will display a message after a few seconds if you touch your screen to ask if you want to kill it. You also have the option to wait, and it will finish eventually. Only if you do not have the option to wait, then the application truly has crashed.
Please keep in mind that the application is usually doing about 10^8 calculations of that function, and it is running on a mobile phone.
Please keep in mind that the application is usually doing about 10^8 calculations of that function, and it is running on a mobile phone.
Monday, August 9, 2010
Calculus Tools 1.0
Calculator is now out of Beta
3D graphing (will be refined quite a bit in the near future)
Lots of bug fixes
3D graphing (will be refined quite a bit in the near future)
Lots of bug fixes
Wednesday, August 4, 2010
Calculus Tools 0.9.9
Changelog:
Polished, redesigned keyboard
Options menu w/ option for haptic feedback
Much better Cupcake display
Lots of bug fixes
Probably some bugs too
Provided there are no major bugs, this will be the last update until v1.0!!! I have some exciting things planned for v1.0, but they will take some time to implement so please be patient.
Polished, redesigned keyboard
Options menu w/ option for haptic feedback
Much better Cupcake display
Lots of bug fixes
Probably some bugs too
Provided there are no major bugs, this will be the last update until v1.0!!! I have some exciting things planned for v1.0, but they will take some time to implement so please be patient.
Tuesday, August 3, 2010
Display Issues (1.5)
I know the update last night crippled the application for anyone using Cupcake. I am working on the issue, and a fix will be posted late tonight.
Friday, July 30, 2010
Calculus Tools 0.9.5
Copy and Paste in Certain Areas
Save Graph Image to SD as .PNG (Required an additional permission--Write to SD)
Updated some translations
Some Minor Bug fixes
Display issues on 1.5
There were a lot of display issues for Cupcake users. Cupcake is basically not compatible with a lot of things. About 80% of the work I do addressing compatibility relates to Cupcake. This is a continuous issue for many developers, and I apologize to the users for the problems. Things should be pretty much fixed for the time being. If I overlook anything again, please let me know this is going on.
Save Graph Image to SD as .PNG (Required an additional permission--Write to SD)
Updated some translations
Some Minor Bug fixes
Display issues on 1.5
There were a lot of display issues for Cupcake users. Cupcake is basically not compatible with a lot of things. About 80% of the work I do addressing compatibility relates to Cupcake. This is a continuous issue for many developers, and I apologize to the users for the problems. Things should be pretty much fixed for the time being. If I overlook anything again, please let me know this is going on.
Monday, July 26, 2010
Rated as the 3rd Best Calculator Program for Android
Calculus Tools was rated as the 3rd best calculator app on Android!!!
Sunday, July 25, 2010
Calculus Tools 0.9.4 & .1 & .2
Calculus Tools 0.9.4
Spanish Translations
Thanks to Elmer Miroslav Mosher Golovin for doing this.
Calculus Tools 0.9.4.1
Bug fixes (lots of them)
Calculus Tools 0.9.4.2
Lots more bug fixes
Updated translations (Thanks to everyone involved in that)
Calculus Tools 0.9.4.2
Lots more bug fixes
Updated translations (Thanks to everyone involved in that)
Wednesday, July 21, 2010
Alternative Markets
Recently, I have posted Calculus Tools on a few different alternative markets. They are listed below.
AppsLib (for Archos 5 & 7)
MotoDev in China
GoMarket in China (goapk.com)
T-Store in South Korea
Pdassi in Germany (pdassi.de)
Calculus Tools 0.9.3
Updated help
Updated calculator with integration
0.9.3.1 - Bug fix (only affected free version)
Tuesday, July 20, 2010
Calculus Tools 0.9.2
Fixed navigation issues with the back button.
Fixed matrices not saving correctly
Monday, July 19, 2010
Future Localization
If anyone would like to help with future localization, I have set up a Crowdin project. Link is below:
Calculus Tools 0.9.1
Korean localization!
Thanks to Ubinuri for this.
Fixed update button on matrices
Fixed a bug with the keyboard.
Sunday, July 18, 2010
Saturday, July 17, 2010
Calculus Tools 0.9.0.1
Fixed bug that caused force close when trying to insert a function
Fixed bug that caused force close when trying to calculate something blank
Friday, July 16, 2010
Calculus Tools 0.9.0
Beta version of the Calculator Added
The calculator functions supports matrices that may be saved.
Help section updated to reflect changes.
Keyboard updated to add comma to main screen for easy matrix entry.
There may be a lot of bugs in the Calculator. These will get fixed in time.
Wednesday, July 14, 2010
Tuesday, July 13, 2010
Calculus Tools 0.8.8
Fixed a bunch of issues with functions not saving.
Thanks Roland!
You can now add the derivative to the graph.
Saturday, July 10, 2010
Linear Algebra Suite
I have begun working on a Linear Algebra suite for Android. I am not sure yet whether this will be included within the Calculus Tools application or released as a separate application. I imagine a beta version will be ready within a week. If anyone has any interest in testing this out before release, send me an email, and I will deliver the application to you as soon as a beta build is available. Also, any suggestions of features would be greatly appreciated.
Friday, July 9, 2010
Calculus Tools 0.8.7
Fixed tan not working properly on keyboard.
Thanks Sam!
On a side note, we breached 4k downloads today : )
Thursday, July 8, 2010
Installing on your SD card
I have allowed this program to be installed on your SD card in Froyo, and of course you can install it on the SD card using Apps2SD. I have done this primarily because I know the file size is somewhat large ~1 MB, and I know this has been a complaint with many apps on the Market not updating to accommodate this. I would however like to give anyone a word of caution that chooses to do this. It is not always the best idea to install applications with services (like the bundled math keyboard) on your SD card. When you mount or remove the SD card, the keyboard will be killed, and it must be re-enabled in your settings upon returning the SD card to the device. If you find this to be a pain, I recommend you leave the application on your internal storage.
Calculus Tools 0.8.6
New Icon!!
Thanks to Jonathan Thompson for designing this.
Also, I fixed a number of bug that were rather trivial.
Wednesday, July 7, 2010
Calculus Tools 0.8.5
Redesigned methods for saving functions - I felt that the old method was sort of cumbersome and not entire useful. From now on all functions will be saved in the graph functions database. This also allows the functions in the graph to be saved across different sessions. The function list will now allow you to leave invalid functions saved in it, but they will not be graphed.
Surface area is now able to be found for functions of 2 variables. This, like the double integral (which uses the same method), can sometimes be rather slow.
Fixed bug in integral not adding a function.
Fixed bug in F3 being invalid turned F1 red.
Made update button wider in functions.
Some internal improvements to make things run more efficiently and reduce file size.
Tuesday, July 6, 2010
Calculus Tools 0.8.4
Double Integration!!!! - Be patient with older phones this may take a little bit of time to calculate. It takes anywhere from 1-3 seconds on my Droid @ 1ghz running Froyo so I imagine it could be much longer on other models. It is not as accurate as the single integration because otherwise it might takes minutes. Triple integration would take waaaaaaay too long so I'm probably not going to do it.
I also fixed the bug in the derivative activity with the evaluate showing up not where it was supposed to.
Calculus Tools 0.8, 0.8.1, 0.8.2
0.8
Math keyboard bundled in the program. You can activate this under settings >> language and keyboard >> calculus tools. To activate it, long press on a text box and choose input method. It will stay active on your phone until you go back to your regular keyboard. I know this is not as easy as keyboards included in some other math applications, but I really didn't want to devote that much screen space to a keyboard all the time.
Thanks to David and John for the suggestion.
0.8.1
Bug fix for keyboard.
0.8.2
Derivative function can do partial derivatives and higher orders.Thanks to Andrew for the suggestion
Tuesday, June 29, 2010
Calculus Tools 0.7
Calculus Tools 0.7 - Major Update
Changelog:
Added parametric and polar graphing (Thanks to Nasty for suggestion)
New icon!
Redesigned help screen
Changed font colors and sizes
Fixed bug on trace and dydx
Removed a lot of useless title bars
Improved graphing efficiency
Removed discontinuities showing up in graph
Added new constants
Sunday, May 30, 2010
Version 0.3.1 Calculus Tools (Paid and Free)
Version 0.3.1 Posted
Added integral reference tables. Added the ability to save the derivative as a user-defined function. Increased font sizes throughout the application because a lot of them were pretty small.
Friday, May 28, 2010
Blog opened
Andyland Development blog has been opened. Here, I will discuss new programs, features and post a changelog of each update.
Subscribe to:
Posts (Atom)