Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: used multiexcerpt include for new APIs

...

Table of Content Zone
locationtop

About this release

Titanium SDK 7.1.0.RC is a minor release of the SDK, addressing high-priority issues from previous releases.

As of this release, Titanium SDK 7.0.x will not be supported six months from 7.1.0.GA's release date. See Axway Appcelerator Deprecation Policy and Nominal Lifetimes documents for details.

Notice of feature and behavior Changes

Android platform

  • TIMOB-25607 - Remove deprecated Ti.map API
    • Deprecated Ti.map

New features

Android platform

  • TIMOB-9366 - Android: Add "radial" support to view "backgroundGradient" property
    • Added radial gradient support
  • TIMOB-20126 - Android: Not able to see the multiline notification on the android device
    • Added support for multiline notifications
  • TIMOB-20522 - FusedLocationProvider on Android
    • Added support for FusedLocationProviderClient for Ti.Geolocation
  • TIMOB-24248 - Android: Ti.Calendar Recurring Events are not clearly exposed
    • Implemented Ti.Calendar.RecurrenceRule
  • TIMOB-25591 - Android: Programmatically check whether app has notification permission on Android
    • Exposed NotificationManagerCompat.areNotificationsEnabled method

iOS platform

  • TIMOB-10368 - iOS: Implement support for custom color/hintTextColor in SearchBar
    • Added support for custom color and hintTextColor in SearchBar

Windows platform

  • TIMOB-25648 - Windows: Implement Ti.UI.Label.minimumFontSize
    • Added parity for Windows platform of Ti.UI.Label.minimumFontSize
  • TIMOB-25743 - Windows: Auto-increment version numbering
    • Implemented automatic version increment. If you omit the build number, it will be generated behind scenes (available only on development and test build).

    • For instance when you have 1.0 version in tiapp.xml, we generate the 4th segment 1.0.0.x version number and increment this build number on each build. (numbering spec: Major.Minor.Build.Revision>). For example: <version>1.0<version>

    • If you set build number explicitly in tiapp.xml, it won't generate the build number. In this case you need to bump up the build number manually in order to prevent deployment issue like this: <version>1.0.1.1<version>

    • This feature can be disabled by setting false on use-auto-versioning in windows section:

      Code Block
      languagexml
      <windows>
        <use-auto-versioning>false</use-auto-versioning>
      </windows>

Multiple platforms

  • TIMOB-24610 - Support transpiling user JS code to ES5, or minimum target OS/JS engine support
    • Added transpiling user JavaScript code to ES5 or minimum target OS/JS engine support

       

      <tiapp>
        <transpile>true</transpile>
      </tiapp>
    • Adding this property and having it set to true will enable transpilation during the build process using babel-preset-env to target the underlying JS engine version. For Android we target the version of v8 we build with. For iOS we target the version of iOS's included JavaScriptCore engine for the minimum iOS version the SDK targets.

      When using the flag be aware of the following this causes code to run in strict mode, which has the potential to cause errors to be thrown. Review Transitioning to strict mode on MDN to become familiar with some common issues.

Community credits

Fixed issues

Android platforms

  • TIMOB-17210 - Android: TextField/TextArea "change" event should not trigger when setting "value" or "attributedString" properties
  • TIMOB-23135 - Android: "locationServicesEnabled" returns false when available on device
  • TIMOB-24404 - Titanium projects specify "global.global != global" different
  • TIMOB-25507 - Android. TiResponseCache. Permission
  • TIMOB-25552 - Android: Nested scrolling within disabled ScrollView are not propagated to parent
  • TIMOB-25557 - Android: View rect x and y are inconsistent
  • TIMOB-25585 - Android: MediaModule creates temporary files that don't delete on app exit
  • TIMOB-25599 - Android: V8 crash can occur when attempting to move weak Java ref to strong
  • TIMOB-25600 - Android : SDK 7.0.0.GA not applying custom theme attributes properly on TableViewRow, but SDK 5.5.1 or below works properly
  • TIMOB-25619 - Android: previewImage() crashes when given a non-file based blob
  • TIMOB-25679 - Android: Crash when setting wrong accuracy in Ti.Geolocation
  • TIMOB-25687 - Android: Picker change listener doesn't work the first time
  • TIMOB-25693 - Android: Possible memory leak when setting ListSections on a ListView
  • TIMOB-25728 - Android: TableView can crash using setData()
  • TIMOB-25742 - CLI: Fails to install APK to Android 4.1 devices
  • TIMOB-25749 - Android: Incompatible types: Class<KrollExternalModule>
  • TIMOB-25757 - Android: Improve proxy getter/setter validation
  • TIMOB-25767 - Android: Animated views should retain their initial properties
  • TIMOB-25769 - Android: Allow video-upload in Ti.UI.WebView
  • TIMOB-25771 - Android: Apps fail to build as of 7.0.2 if system requires proxy to access Internet
  • TIMOB-25773 - Android: App won't compile if the folder contains space and dash

iOS platforms

  • TIMOB-20604 - iOS: ti.geofence not tracking location on
  • TIMOB-23183 - iOS Non-public API usage: The app references non-public symbols in <APPLICATION NAME> : _ptrace
  • TIMOB-25201 - iOS: tintColor doesn't work on imageView if dimensions (height, width) are provided
  • TIMOB-25739 - iOS 11: Location permissions do not indicate missing "WhenInUse" privacy-key
  • TIMOB-25762 - iOS 11.3 beta: Loading HTML in Webview errors when accessing EventListener
  • TIMOB-25765 - iOS 11: Scrollview layout error when set window with includeOpaqueBars and extendEdges

Windows platforms

  • TIMOB-24818 - Windows: Calling insertRow with a deleted row errors out application
  • TIMOB-25274 - Windows: setData does not add UI elements that already existed
  • TIMOB-25581 - Windows: borderWidth should be changed 0 to 1 when borderColor is set
  • TIMOB-25595 - Windows: selecting search result with searchbar and in tableview shows empty row
  • TIMOB-25598 - Windows: Not being able to debug issues due to exceptions shown
  • TIMOB-25696 - Windows: Network.TCP causes app crash
  • TIMOB-25794 - Windows: Adding a hyperloop created UI element to a View crashes the app

Improvements

Android platform

  • TIMOB-17821 - Android: Add Support for Custom View to ActionBar
    • Added support for Custom View to ActionBar
  • TIMOB-25703 - Android: Add VideoPlayer "showsControls" property
    • Added support for VideoPlayer showsControls property
  • TIMOB-25730 - Android: Allow SearchBar "color" and "hintTextColor" properties to be set dynamically
    • Added support for SearchBar's color and hintTextColor properties to be set dynamically

iOS platform

  • TIMOB-19154 - iOS9: Replace NSURLConnection in Ti.Network.HTTPClient with NSURLSession
    • Replaced Deprecate NSURLConnection with NSURLSession API

Windows platform

  • TIMOB-25616 - Windows: Add option to suppress/force uninstallation on deploy
    • Added feature to prevent uninstalling existing apps in order to complete installation when the same app version is already installed unless user explicitly specifics the --forceUnInstall option
    • Example: appc ti build -p windows --wp-sdk 10.0 --target wp-device --skipInstallDependencies -l trace --forceUnInstall

API changes

New APIs

The following APIs are new or have expanded platform support in release

Multiexcerpt include
MultiExcerptName7.1.0
.

APITypeNotes
Titanium.Android.ActionBar.customViewproperty

Sets a view to be used for a custom navigation mode. (New API, supported on Android.)

Titanium.Android.ActionBar.getCustomViewmethod

Gets the value of the Titanium.Android.ActionBar.customView property. (New API, supported on Android.)

Titanium.Android.ActionBar.setCustomViewmethod

Sets the value of the Titanium.Android.ActionBar.customView property. (New API, supported on Android.)

Titanium.Android.NotificationManager.areNotificationsEnabledmethod

Returns whether showing notifications is enabled for the application. (New API, supported on Android.)

Titanium.Calendar.Event.createRecurrenceRulemethod

Creates an recurrence pattern for a recurring event.All of the properties for the recurrence rule must be set during creation. The recurrence rule properties cannot be modified. (Added support for Android.)

Titanium.Calendar.Event.getRecurrenceRulesmethod

Gets the value of the Titanium.Calendar.Event.recurrenceRules property. (Added support for Android.)

Titanium.Calendar.Event.recurrenceRulesproperty

The recurrence rules for the calendar item. (Added support for Android.)

Titanium.Calendar.Event.savemethod

Saves changes to an event permanently. (Added support for Android.)

Titanium.Calendar.Event.setRecurrenceRulesmethod

Sets the value of the Titanium.Calendar.Event.recurrenceRules property. (Added support for Android.)

Titanium.Calendar.RecurrenceRuleobject

An object that is used to describe the recurrence pattern for a recurring event. (Added support for Android.)

Titanium.Media.VideoPlayer.getShowsControlsmethod

Gets the value of the Titanium.Media.VideoPlayer.showsControls property. (Added support for Android.)

Titanium.Media.VideoPlayer.setShowsControlsmethod

Sets the value of the Titanium.Media.VideoPlayer.showsControls property. (Added support for Android.)

Titanium.Media.VideoPlayer.showsControlsproperty

Whether or not the receiver shows playback controls. Default is true. (Added support for Android.)

Titanium.UI.Android.DrawerLayout.getToolbarmethod

Gets the value of the Titanium.UI.Android.DrawerLayout.toolbar property. (New API, supported on Android.)

Titanium.UI.Android.DrawerLayout.setToolbarmethod

Sets the value of the Titanium.UI.Android.DrawerLayout.toolbar property. (New API, supported on Android.)

Titanium.UI.Android.DrawerLayout.toolbarproperty

A Toolbar instance to use as a toolbar. (New API, supported on Android.)

Titanium.UI.Android.SearchView.getHintTextColormethod

Gets the value of the Titanium.UI.Android.SearchView.hintTextColor property. (New API, supported on Android.)

Titanium.UI.Android.SearchView.hintTextColorproperty

Color of hint text that displays when field is empty. (New API, supported on Android.)

Titanium.UI.Android.SearchView.setHintTextColormethod

Sets the value of the Titanium.UI.Android.SearchView.hintTextColor property. (New API, supported on Android.)

Titanium.UI.SearchBar.colorproperty

Color of the text in this text field, as a color name or hex triplet. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.SearchBar.getColormethod

Gets the value of the Titanium.UI.SearchBar.color property. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.SearchBar.getHintTextColormethod

Gets the value of the Titanium.UI.SearchBar.hintTextColor property. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.SearchBar.hintTextColorproperty

Hint text color to display when the field is empty. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.SearchBar.setColormethod

Sets the value of the Titanium.UI.SearchBar.color property. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.SearchBar.setHintTextColormethod

Sets the value of the Titanium.UI.SearchBar.hintTextColor property. (New API, supported on Android, iPhone and iPad.)

Titanium.UI.TabGroup.closeevent

Fired when the tab group is closed. (Added support for Android.)

PageWithExcerptNew API Notice SDK 7.x