By Developers, For Developers

Historical errata for Seven Mobile Apps in Seven Weeks

PDF PgPaper PgTypeDescriptionFixed onComments
xiTYPO

“But since 2012 RubyMotion has offered Android support as well…” I believe they didn’t announce Android support until 2014…not 2012. Here is old blog post talking about the beta for it which was a few months after the announcement: www.rubymotion.com/news/2014/09/16/announcing-the-public-beta-of-rubymotion-for.html

2016-02-04Bad typo. Good catch. Thank you.
20SUGGEST

I am installing on Windows and received an error when I ran the “bundle install” step in the “Running the Server” section. Turns out I also needed to install the Dev Kit from “rubyinstaller.org / downloads” and follow instructions at “github.com / oneclick / rubyinstaller / wiki/Development-Kit”, which also required updating my config.yml file. It would be nice to include these additional steps and details.

2016-04-04
3619ERROR

When executing on console:
timeZones.fetchTimeZones(console.log)

On “linux mint” firefox v45.0 web console got this error:
TypeError: ‘log’ called on an object that does not implement interface Console.

On “linux mint” chrome Version 50.0.2661.75 (64-bit) console got this error:
Uncaught TypeError: Illegal invocation time_zone_manager.js:9

2016-04-17
3619ERROR

Instead of:
timeZones.fetchTimeZones(console.log)

Should execute:
timeZones.fetchTimeZones(console.log.bind(console))

2016-04-17
117SUGGEST

The Xamarin Android Emulator (I think called the Android Player) is no longer supported or available, therefore you might want to remove the relevant ‘Do’ task. However, Microsoft offer an Android emulator (that only runs on Windows OS) which is worth letting people discover.

122SUGGEST

The last code example is incomplete, it lacks the method name and the call to super….() for the onRestoreInstanceState(…) implementation. Also, the code on github doesn’t include this method for android_02_03… but should, otherwise people may believe that saving is enough when it ain’t - restoring what was saved is vital too :)

137ERROR

The additional code that needs to be added to the onStart() method is missing. Similarly onDestroy() needs to be implemented but isn’t even mentioned in the book (or why it’s important as otherwise the app crashes after rotation (and anything else that causes the Fragmen to be destroyed and restarted).

138SUGGEST

Change “…so he can refer to previous rates while offline.” to “…so the user can refer to previous rates while offline.”

Please don’t assume the user is male.

122SUGGEST

Hi.

I have no experience with android so I am glad you write this guide. I have some experience with iOS and the workings of xcode, submit to app store etc. So bear with me. :-)

I downloaded android studio 2.2 rc2 since I got some errors in 2.1.2. A SO thread suggested to use 2.2 which works (on macos sierra).

I came to the section “All is well: Using a service for networking” but it was somewhat unclear for me how to create the IntentService. After some digging in android studio I found the template in FileNew>Service->Service (IntentService). Maybe it can be a bit more explicit in a coming update.

Thank you.
Claus

14xiiiTYPO

Paragraph “Mobile Web”, second sentence:

“There’s continually debate about…”

Seems it should be “There’s continual debate about…”

1DEFER

Reported by Alex Baker:

Yahoo shut down their finance API so the stock quote and currency conversion APIs are broken. There is another Yahoo API that can be used with some modification to stock_quote.rb. I posted a gist with the changes: [see below].

As a note, I designed there to be the local API in the middle of the apps and the “external” dependencies so that in a pinch, the Rails API could be modified to return the test data, or any other data you want, as an attempt at cushioning readers from changes. Alex (OP) posted the following fix: https://gist.github.com/abaker/fe38053314149140d3e91aa570bb1ddc
n/aERROR

Example source code: ‘API project’. The Gemfile and Gemfile.lock for the API don’t work due to ‘fixing’ on a broken version of the json gem ‘1.8.3’. In addition, freezing rails at 4.2.5 means it doesn’t work even with ruby 2.4. Changing this to:
gem ‘rails’, ‘~> 4.2.5’ allows an upgrade to 4.2.11 via ‘bundle update’ which seems to work with ruby 2.4 (so far anyway) - and it passes all tests. It would probably work with 2.6.6

Categories: