Commit Graph

444 Commits

Author SHA1 Message Date
Bryce Curtis
0b6a39bc6f Add ability to override url handling in plugins. This takes part of code from "Issue 216: Droidgap now allows plugins to override url loading" by davejohnson. 2011-09-08 15:36:20 -05:00
macdonst
073f71563c Fix for Issue #222: Android plugin FileUploader with UTF-8 in params 2011-09-06 14:15:45 -07:00
macdonst
6c3d13fc74 Fix for Issue #220: Android audio streaming doesn't work for https 2011-09-06 14:15:45 -07:00
macdonst
70de3d49a2 Fix for Issue #218: audio capture audio/3gpp mimetype getting set to video/3gpp
Works around an issue where MimeTypeMap.getMimeTypeFromExtension() always returns video/3gpp when the file extension is .3gp or .3gpp.
2011-09-06 14:15:45 -07:00
Dave Johnson
e41746b6a8 Add overrideUrlLoading overriding ... yeah ... to plugins by the plugin adding a <url-filter.../> and implmenting the onOverrideUrlLoading(...) method 2011-09-06 14:15:45 -07:00
macdonst
9083e921d9 Fix for Issue #208: Media.release() accidentally makes a call to the Media error callback 2011-09-06 14:15:45 -07:00
Bryce Curtis
4a38f160fb Re-checkin commit for "Fix Issue #203: Prompt crashes on Android 3.2 tablet." 2011-09-06 14:15:45 -07:00
macdonst
0297807bd0 Fix for issue #141: EXIF data stripped from captured photos in android
In order to fix this issue I needed to read the EXIF data. Save it to a temporary object then after the bitmap is compressed I open the file and write the saved EXIF data.

Supports the following EXIF fields if they are set in your image:

APERTURE
DATETIME
EXPOSURE_TIME
FLASH
FOCAL_LENGTH
GPS_ALTITUDE
GPS_ALTITUDE_REF
GPS_DATESTAMP
GPS_LATITUDE
GPS_LATITUDE_REF
GPS_LONGITUDE
GPS_LONGITUDE_REF
GPS_PROCESSING_METHOD
GPS_TIMESTAMP
ISO
MAKE
MODEL
ORIENTATION
WHITE_BALANCE
2011-09-06 14:15:45 -07:00
Bryce Curtis
498f879383 Fix Issue #203: Prompt crashes on Android 3.2 tablet. 2011-09-06 14:15:44 -07:00
macdonst
7e2044c5b4 Merge pull request #195 from m00sey/master
Expose Volume control
2011-08-17 12:45:09 -07:00
macdonst
80891b8495 Fix for Issue #200: NetworkManager missing HSDPA in getType
Added HSDPA, HSUPA, HSPA and HSPA+ type detection to NetworkManager.
2011-08-18 00:42:57 +08:00
Bryce Curtis
361a7aacc5 Issue #194: Resolve flashes between screen, and enable setting of background color & optional loading dialog. 2011-08-11 16:21:22 -05:00
Bryce Curtis
8d46d33675 Implementation of Battery Event Spec. (http://dev.w3.org/2009/dap/system-info/battery-status.html) 2011-08-12 04:31:43 +08:00
Bryce Curtis
a735a631f6 Formalize document and window event listeners and allow plugins to override eventListeners. 2011-08-12 04:31:43 +08:00
Kevin Griffin
381d1615b4 formatting 2011-08-09 23:19:50 -04:00
Kevin Griffin
ad8086fab5 exposing volume control 2011-08-09 23:18:01 -04:00
macdonst
004453b03f Upping version to 1.0.0 2011-07-29 12:01:46 +08:00
macdonst
39d6952494 Upping version to 1.0.0rc3 2011-07-26 12:30:41 +08:00
macdonst
2bf765897b Normalize Android Camera.takePicture with iOS and BB versions.
Both iOS and BlackBerry support the PNG image format so I added support for Android.

Also, iOS and BB use targetWidth/targetHeight to specify the resolution of the image.  I've swiched from using maxResolution to targetWidth/targetHeight in this change list.
2011-07-26 12:18:04 +08:00
macdonst
1c97467e39 Issue #169: Media.seekTo() does not update Media._position value.
Calling Media.seekTo() now updates the Media._position value. I could not make seekTo() to work when your audio clip is not playing as that is not a supported action of the AndroidMedia player class.
2011-07-23 03:21:45 +08:00
Joe Bowser
be48b576d9 Merge branch 'master' of github.com:phonegap/phonegap-android 2011-07-21 13:16:09 -07:00
Joe Bowser
648e56cb67 Merging maxResolution 2011-07-21 13:15:52 -07:00
macdonst
c093881f54 Issue #174: contact attribs should return null instead of empty array
Currently the implementation will return an empty array for the following Contact attributes: phoneNumbers, emails, addresses, ims, organizations, addresses, websites and photos.  With this fix these attributes will be null unless the lenght of the array is greater than 0.
2011-07-22 03:16:45 +08:00
Brian LeRoux
e09c728fd0 Edited framework/src/com/phonegap/DroidGap.java via GitHub 2011-07-21 11:47:20 -07:00
macdonst
7afa2d3840 Upping version to 1.0.0rc2 2011-07-19 04:11:17 +08:00
macdonst
e789349c23 Handle content:// uri's in resolveLocalFileSystemURI
Sometimes Android will hand you a content:// uri in the place of a file path. Particularily the Camera.getPicture() code will do this. I've updated the file utils code to handle this type of uri and return a real file path.
2011-07-19 04:10:55 +08:00
Bryce Curtis
2787a960d8 Issue #153: Display default value in prompt(). 2011-07-16 15:07:34 -05:00
Don Coleman
3de2084af2 write error to log when plugins.xml is missing 2011-07-15 23:45:32 -04:00
macdonst
eb0e0d9d11 Issue #156: Camera.DestinationType.FILE_URI on Android not conforming to API Spec
Instead of capturing the orginal image to /sdcard/Pic.jpg or /sdcard/Capture.jpg we detect if the SD card is mounted. If mounted the file is placed in the apps temp directory at:

/sdcard/Android/data/{package name}/cache/

If the SD card is not mounted we default to internal storage at:

/data/data/{package name}/cache/
2011-07-16 05:03:48 +08:00
Bryce Curtis
53410781e4 Issue #154: Propagate existing parameters when starting new DroidGap activity. 2011-07-15 15:00:12 -05:00
Bryce Curtis
2bee9a8442 Remove deprecated addService() method. The new way to register a plugin is to include it in res/xml/plugins.xml. 2011-07-15 14:26:20 -05:00
Bryce Curtis
7c9eca1fab Replace deprecated call to activityStop. 2011-07-15 14:04:46 -05:00
Bryce Curtis
017fa1b917 Use the same database based upon application context for each html page loaded as part of this app. 2011-07-13 16:48:29 -05:00
Bryce Curtis
24bb836221 Shouldn't return error on first call. This prevents successful invocation, which prevents deviceready from firing. 2011-07-13 00:21:34 -05:00
macdonst
c80ddc1b22 Issue #149: Deprecate support for Android 1.X devices
Right now we are just removing the code for Contacts on 1.5/1.6 devices. We still need to keep around our implementation of Geolocation and Storage for older devices since some versions of Android have broken implementations of these features. Android 3.0 I'm looking at you!
2011-07-13 00:18:38 +08:00
macdonst
24f979394f Remove deprecated Network.isReachable (use the Network Information API instead) 2011-07-12 23:01:42 +08:00
Bryce Curtis
6c65a6a016 Make sure we load the correct resource id for plugins.xml. 2011-07-11 22:56:20 -05:00
macdonst
66f7afbed2 Issue #146: File API - File::writeAsText not in the API, remove 2011-07-12 11:13:24 +08:00
macdonst
1de036a744 Setting version as 1.0.0rc1 2011-07-12 05:25:53 +08:00
macdonst
22a9cabeb9 Updating Contacts for June 16th W3C Spec 2011-07-11 23:18:24 +08:00
Bryce Curtis
5de4ae7554 Remove dependency on notification.activityStart/Stop so they can be deprecated to an optional plugin. Also remove hideLoadingDialogOnPage option, since it no longer is relevant. 2011-07-08 23:07:22 -05:00
Bryce Curtis
0a7a77e77b Accept IPlugin for result callback when starting activities for result. 2011-07-07 14:11:03 -05:00
Bryce Curtis
9d1e73656f Merge pull request #138 from davejohnson/iplugin-fix
Update PluginManager to accept plugins implementing IPlugin too
2011-07-07 12:00:36 -07:00
macdonst
3895570edd Fixed Issue 140: Contact.displayName is not being set correctly 2011-07-08 01:06:27 +08:00
Dave Johnson
090890b22a Update PluginManager to accept plugins that implement IPlugin rather than extend Plugin 2011-07-07 00:12:44 -07:00
Bryce Curtis
ce9d577415 Remove unused code and variable. 2011-07-06 13:56:49 -05:00
Bryce Curtis
3bf48f82af Merge pull request #136 from brycecurtis/plugins
Loading plugins from res/xml/plugins.xml
2011-07-06 11:12:20 -07:00
Bryce Curtis
9d5aa9406c Loading plugins from res/xml/plugins.xml 2011-07-05 23:21:32 -05:00
Dave Johnson
0b1e760fc1 Add better support for Activity result callbacks from plugins. Add some sugar for calling success / error callbacks from plugins 2011-07-05 14:13:55 -07:00
Bryce Curtis
c98b758e94 Update version to 0.9.6.1 2011-06-30 13:15:30 -05:00
Bryce Curtis
b8cc36e805 Don't clear activity stack by default. 2011-06-30 10:42:27 -05:00
Bryce Curtis
76b2df208e Add comment 2011-06-29 18:28:29 -05:00
Bryce Curtis
9643314553 Add more control over how url is loaded. 2011-06-29 18:25:49 -05:00
Bryce Curtis
1e3422ae70 Load new urls in new DroidGap activity - not same webview as initial url. 2011-06-29 18:23:20 -05:00
Bryce Curtis
fc1bea4947 Update version to 0.9.6. 2011-06-29 16:43:52 -05:00
macdonst
8ef93ff0e5 Issue 123: Fixing problem where name object is not specified 2011-06-28 00:34:11 +08:00
macdonst
ac2e92321f Issue #121: Problem with resolveLocalFileSystemURI if file name has spaces 2011-06-24 14:08:46 -07:00
Bryce Curtis
05eacf4792 Always call plugin's onPause/onResume with multitasking flag when these lifecycle events occur in activity. It is up to the plugin to handle as necessary. 2011-06-24 14:08:46 -07:00
Kevin Griffin
435c903baf formatting - sigh 2011-06-24 14:08:46 -07:00
Bryce Curtis
53de070a41 Return true when handling key events, indicating that no further processing is necessary. 2011-06-24 14:08:46 -07:00
Bryce Curtis
54fdcbfd46 Urls with same path and file but different # or ? should compare to same url. 2011-06-24 14:08:46 -07:00
Joe Bowser
44aa0aeb0f Adding SSL dev code 2011-06-24 14:08:46 -07:00
Kevin Griffin
7d53eb8e3e formattage 2011-06-24 14:08:46 -07:00
Joe Bowser
7bc0d624ac Fixing conflict 2011-06-24 14:08:26 -07:00
Bryce Curtis
d35e8cd44b Fix security vulnerability - make sure any requests to run native code only come from url currently loaded into webview. 2011-06-24 14:06:20 -07:00
Benjamin Weingarten
eb3b1f91d4 Fix bug where isreachable doesn't return correct results for https
(http secure) url protocol.
2011-06-24 14:06:20 -07:00
macdonst
8a1ab69235 Updating Network Connection API to match spec released on June 7th 2011-06-24 14:06:20 -07:00
macdonst
85eb6e4997 Issue #104: Bug in FileUtils.copyDirectory & moveDirectory
Adding better test to see if a directory is being moved/copied into itself.

Copy /sdcard/myDir to /sdcard/myDir-backup is okay but
Copy /sdcard/myDir to /sdcard/myDir/backup should thow an INVALID_MODIFICATION_ERR
2011-06-24 14:06:20 -07:00
macdonst
0280d5dd82 Updating Connection object to conform with recently released spec
- Replacing currentNW and homeNW with networkName.
- Changing Connection constants to strings instead of ints.
- Firing online/offline events on network change.
2011-06-24 14:06:20 -07:00
macdonst
088c342198 Improve performance of our encoding
Move from using String.replaceAll() to a modified version or URLEncoder.encode().
2011-06-24 14:06:20 -07:00
macdonst
af18a8e1aa Issue #80: Unable to open large json files on android 2.2 + phonegap 0.9.5
I could not get rid of the url encoding and decoding without hampering some users ability to pass non-ascii characters back to JavaScript.  However, I was able to reduce the amount of data being passed from Java to JavaScript by 40% by decoding common characters that occur in JSON and XML.  These characters will survive the round trip just fine and don't need to be encoded.

This is the best solution I could come up with.  You won't be able to read files as large as you could in 0.9.4 but it will get close and it will support non-ascii characters.
2011-06-24 14:06:20 -07:00
Joe Bowser
d00a9f33cd Merge branch 'master' of github.com:phonegap/phonegap-android into keyboard 2011-05-31 15:41:03 -07:00
Joe Bowser
431c80782e Changing the layout class so it has the screen dimensions to take into account Device Orientation 2011-05-31 15:38:03 -07:00
Bryce Curtis
39ec9c095d Need to unregister for network intent receiver on shutdown to prevent leaks. 2011-05-31 15:13:54 -05:00
Bryce Curtis
10e1808c56 Clean up CallbackServer when about:blank page has loaded. This fixes errors when shutting down. 2011-05-31 15:11:02 -05:00
macdonst
9036eb8fcc Issue #94: feature request: Event for Keyboard show/hide 2011-05-30 15:12:31 -04:00
Fil Maj
4280fdf252 Fix for ticket #58: Certain 1.5/1.6 devices would throw a FileNotFoundException when taking pictures. Patch submitted by Agustin of AVANTIC (thanks!). 2011-05-26 12:42:44 -07:00
macdonst
ca5e141b5b Changing Media class to return seconds
The media commands getCurrentPosition() and getDuration() will now return seconds (float) instead of milliseconds to line up with iOS and the docs.
2011-05-27 01:54:48 +08:00
macdonst
6618015151 Fixing a number of issues in File API
Issue #82: The RandomAccessFile class in Android's version of Java does not write non-ASCII characters very well.  I've switched to using a FileOutputStream which seems to work just great.  Tested by myself and folks from Egypt and the Netherlands.

Issue #87: Fixed a problem where the file errors were being returned as evt.target.result.code.code.
2011-05-17 22:11:38 +08:00
macdonst
e84c59d23c Merge pull request #78 from kernelsandirs/master
Added Media.seekTo(int milliseconds);

Merging this code in now and making some notes to enhance the Media class.
2011-05-15 19:32:02 -07:00
Bryce Curtis
839c577243 Need to use EclairClient for 3.x devices too. This fixes the HTML5 geolocation problem on Android 3.x. 2011-05-10 11:44:09 -05:00
kernelsandirs
ffbc010d7b Added Media.seekTo(int milliseconds); 2011-05-04 11:51:26 -07:00
macdonst
bdadbbc339 Implement W3C Network Information API
Adding a new object to navigator called 'connection'.  Users can query the
connection object to find out what type of network, if any, the device is
connected to.  The connection object will be updated each time there is a
connectivity change on the device.
2011-05-04 22:23:16 +08:00
kernelsandirs
b94eedaf07 Added Media.seekTo(int milliseconds); 2011-05-03 21:27:08 -07:00
macdonst
58ecac335b Capture modifications:
Renaming supportedAudioFormats to supportedAudioModes.
Renaming supportedImageFormats to supportedImageModes.
Renaming supportedVideoFormats to supportedVideoModes.
Adding copywrite header to the Capture.java file.
2011-05-03 00:12:19 +08:00
macdonst
fd8bb2f671 Issue 72: Contact.Save: onSuccess callback is called when contact is not saved. 2011-04-29 02:08:25 +08:00
Bryce Curtis
0aacfbdd50 Update version to 0.9.5 2011-04-27 14:10:13 -05:00
macdonst
2cd116e4e7 Issue 60: Contact search unicode problem
Contact search was not working for unicode letters.  The CallbackServer was changed so that it returned url encode strings.  On the JavaScript side the PhoneGap callback handler decodes the returned string.
2011-04-25 22:22:12 +08:00
Bryce Curtis
673a8871df Ticket 136: window.openDatabase() in Android 3.0 throws SECURITY_ERR (most code written by Simon MacDonald - I just tested and checked in)
When you call window.openDatabase() on an Android 3.0 device you get and error something like this:

E/Web Console( 1791): SECURITY_ERR: DOM Exception 18: An attempt was made to break through the security policy of the user agent.

Simon worked with Pat for a bit and they think this is a WebKit or Android/WebKit interaction bug. In the meantime this fix determines if you are on Android 3.0 and uses Droid_DB if so.
2011-04-19 16:54:16 -05:00
Roman
887f754014 Hidden NPE fixed, which appeared when someone pass null as arguments
(for such SQL as e.g. CREATE TABLE).

It is especially important when work with dome 3d party persistemce
libraries, like e.g. http://github.com/zefhemel/persistencejs which
passes these nulls.
2011-04-18 17:02:55 -07:00
macdonst
674015460f Fixing file commands so that they run async 2011-04-13 03:13:10 +08:00
Bryce Curtis
626119ae3b Bug 126: NullPointerException in onDestroy() 2011-04-05 15:42:25 -05:00
Ron Reiter
307f9d1871 Add maxResolution flag 2011-04-04 02:57:10 +03:00
macdonst
e766188689 W3C Media Capture API
An implementation of the W3C Media Capture spec:
http://dev.w3.org/2009/dap/camera/Overview-API

Capture operations are supported for audio, video, and images.  Each
capture operation launches the native audio recorder, video recorder,
or camera application, respectively.
2011-04-01 15:52:53 -04:00
macdonst
d424af03e4 Ticket 124: File Transfer multipart badly formed trips mod_security
A standard from has no trailing whitespace after a content-disposition line like so: "Content-Disposition: form-data; name="data";" however when using the extra params of Android FileTransfer a space is added on the end "Content-Disposition: form-data; name="data"; "

This fix simply removes the trailing whitespace.
2011-04-01 22:43:38 +08:00
Jos Shepherd
010c774988 Added native prompt() dialog support 2011-03-25 16:31:27 +00:00
macdonst
969f0c87d7 PhoneGap Android Ticket 113:
FileTransfer returns FILE_NOT_FOUND_ERR on http 500 error

For some reason on Android if you do a getInputStream() on a HTTP Connection and the server returns a 500 error it will report a FileNotFoundException.  Catching this exception and throwing an IOException so that we can report a more accurate error in JavaScript.
2011-03-24 23:31:12 +08:00
Bryce Curtis
935295c9b8 Bug 110 - When you close an app on Android you see a JS error in logcat. 2011-03-18 17:27:36 -05:00
Bryce Curtis
7344964c05 Add support for setting sms body using uri "sms:#?body=text". 2011-03-13 22:36:09 -05:00
Bryce Curtis
21a34a8980 Ticket 106 - Simplify splash screen logic based upon idea from vadim. 2011-03-08 22:00:33 -06:00