google-developer-training / android-basics-kotlin-words-app Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
In step 6 the explanations are only understandable if you already read step 7. When I read "Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search?" I did not understand what is going on.
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-fragments-navigation-component#1
In which task and step of the codelab can this issue be found?
2. Starter Code
Describe the problem
We need the starter code, but the text specifies the code for the activity branch.
The proper branch name is starter, so the correct URL is
"https://github.com/google-developer-training/android-basics-kotlin-words-app/tree/starter".
Steps to reproduce?
https://github.com/google-developer-training/android-basics-kotlin-words-app/tree/activities
Versions
Android Studio version: 4.1.1
API version of the emulator: 29
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
In which task and step of the codelab can this issue be found?
Describe the problem
After the changes, the fragment layout files should look as follows.
fragment_letter_list.xml
Here it has wrong context value
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Task 6, step 5
Describe the problem
Implicit intent has not yet been set up. Possibly this ection should come after task 7
Steps to reproduce?
Versions
Not a version issue, issue with the task itself
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search? Go ahead and move this to the companion object as a new constant called SEARCH_PREFIX. The companion object should now contain two constants.
Describe the problem
It is asking me to modify an implicit intent I have done before (which I have not done it yet because it has not been explained yet...)
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
Using Navigation Graph - Steps 1 & 5
In step 1, the wording "Replace the content of the FrameLayout" is a bit ambiguously worded as to whether you should replace the entire FrameLayout, the attributes inside the FrameLayout tag, or everything between the FrameLayout opening and closing tags. It would read better to say to replace the RecyclerView with the new FragmentContainerView.
In step 5, the example code is missing the FrameLayout tag starter, it has <xmlns:... vs <FrameLayout xmlns:...
Additionally, in step 5, app:navGraph="@navigation/nav_graph" results in an error (Cannot resolve symbol) which is cleared up in the next section (Set Up The Navigation Graph) but it would follow the previous instances where the editor raised an error if it mentioned it in the step itself, i.e. 'The editor will claim this symbol isn't resolved, but don't worry, we'll address that in the next step.'
In which task and step of the codelab can this issue be found?
Step 5
Describe the problem
The instruction 3 of this Step 5 says:
That doesn't make sense, if I read it literally it says to implement onCreate() method "simply" should I call "setHasOptionsMenu"?. Here is a typo or write something like: To implement the AppBar or menu buttons you must call setHasOptionsMenu in the onCreate.
Otherwise the reading makes it look like "setHasOptionsMenu function" is needed to "implement the onCreate method".
Task 8, one of the last un-numbered steps.
It tells you to go to res>menu, but that folder doesn't exist. At this point in all the code bases up to this point, adding a new resource folder I don't believe has been discussed. Nor does it mention if it is mandatory/suggested/optional when using the New Resource Directory menu to set the Resource type to 'menu' for this new menu folder. It can be figured out with some thought but it deviates from the entire learning structure's 'hand-holding' for the first time a new action is performed to completely leave this step out.
https://developer.android.com/codelabs/basic-android-kotlin-training-collections
What do collections have to do with "Navigate between screens"???
I understand courses have prerequisites, but these courses are organized very poorly. If I want to learn about collections, I'll watch a "Collections" tutorial. If I want to learn about navigation, I watch a "Navigation" tutorial.
In which task and step of the codelab can this issue be found?
Activities and Intents CodeLab, Step 6 (Set Up DetailActivity), Cleaning Up section, steps 5 & 6
Describe the problem
Cleaning Up section, steps 5 & 6 describe defining the search constant for the Implicit Intent, which has not been set up yet (it is the next step (Step 7) of this CodeLab. Perhaps Cleaning Up steps 5 & 6 should be moved to the following section on setting up the Implicit Intent, or the all the Code Clean Up should be moved to after both the explicit and implicit Intents have been setup.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Describe the problem
I think there is a mistake, and the "tools:context" of "FrameLayout" should be "LetterListFragment" in this part. Because, above this image, you wrote "Update tools:context in fragment_letter_list.xml to .LetterListFragment"
That's all. sorry for my poor English, and I really appreciate your support. Have a nice day!
In which task and step of the codelab can this issue be found?
Task 6, Step 6
Describe the problem
Step 6 reads as follows:
You can now replace the hardcoded URL with the SEARCH_PREFIX constant. Edit the queryUrl in the onClickListener in
WordAdapter as follows.
val queryUrl: Uri = Uri.parse("${DetailActivity.SEARCH_PREFIX}${item}")
But there is no onClickListener in the WordAdapt.kt file. There is no "queryUrl" variable anywhere in all the files in the existing code.
Steps to reproduce?
Versions
Android Studio version: 4.1.1
API version of the emulator: 29
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Task 6 Step 5
Describe the problem
It says "Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search?" except there is no mention of WordAdapter or imlpementing an implicit intent in any of the previous tasks or steps of the codelab.
EDIT: It turns out you are asked to do this in the following task (task 7), however I'm fairly certain these tasks are the wrong way round as it is certainly confusing being asked to edit code you have not yet implemented and then the following task being asked to implement code which includes the part you were just asked to replace.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Task 2 : Learn about collections
Describe the problem
The codelab is demonstrating the usage of the contains functions for the sets.
It makes use of this line:
println("contains 7: ${setOfNumbers.contains(7)}")
Which results in a Unresolved reference error.
Steps to reproduce?
Running the code listed in the codelab.
fun main() {
val numbers = listOf(0, 3, 8, 4, 0, 5, 5, 8, 9, 2)
println("list: ${numbers}")
println("sorted: ${numbers.sorted()}")
val setOfNumbers = numbers.toSet()
println("set: ${setOfNumbers}")
val set1 = setOf(1,2,3)
val set2 = mutableSetOf(3,2,1)
println("$set1 == $set2: ${set1 == set2}")
println("contains 7: ${setOfNumbers.contains(7)}")
}
In which task and step of the codelab can this issue be found?
Step 8
Describe the problem
Where do "view module" and "view list" come from? As an expedient, I copied this code from out of the finished project at github.
Pat
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-activities-intents#9
In which task and step of the codelab can this issue be found?
Step.6
Describe the problem
We can choose the one of the two view, LinearLayout and GridLayout.
If you click a letter, the open detail window.
The problem happen after this.
If you back button of app on the top left window, you go back to LinearLayout even if you
moved from GridLayout. But if you hard back button of android system, you can back to
correct Layout same when you moved from.
Steps to reproduce?
Versions
Android Studio version: latest stable
API version of the emulator: Real device Pixel 4a
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
4. Create Fragment and Layout Files
Describe the problem
The XML code for "fragment_word_list.xml" is the same code used for "fragment_letter_list.xml"
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Collections in Kotlin: Step 5 make word lists
Describe the problem
The explanation of the startsWith-method is, presumably by mistake, displayed as code. This makes it harder to read the explanation.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
4. Create Fragment and layout Files
Describe the problem
The description has, for the final content of fragment_letter_list.xml
tools:context=".WordListFragment">
But the text for this entry says to make it:
tools:context=".LetterListFragment">
Steps to reproduce?
Versions
Android Studio version: 4.1.1
API version of the emulator: 29
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Task: Set Up DetailActivity; Step 5
Describe the problem
Step 5 covers code that will likely not be explained until the next task of the codelab.
This is just a problem in the lecture material, not the code.
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-activities-intents#5
In which task and step of the codelab can this issue be found?
Task 6. - Set Up DetailActivity -> Cleaning up -> step 6
Describe the problem
There's no onClickListener in WordAdapter in the starter code.
This step is in some way repeating the step 1 in task 7. This could cause cofusion. To find the missing peice of code I looked at the solution code (task 10)
Steps to reproduce?
Versions
Android Studio version: 4.1.1
API version of the emulator: 27
Additional information
Include screenshots if they would be useful in clarifying the problem.
Describe the problem
Add a section to explain how to accept licenses.
Steps to reproduce?
Versions
Android Studio version: 4.1.2
In which task and step of the codelab can this issue be found?: 5th task, 2nd step
Describe the problem: The markup to hyperlink startsWith() is not rendered properly
Steps to reproduce?
Versions
Not relevant
Additional information
Screenshot attached
In which task and step of the codelab can this issue be found?
Task 5, Step 2
Describe the problem
The last paragraph of step 2 appears to have used some sort of HTML code that causes the entire paragraph to show in a single line with a horizontal scroll bar. The text font is also difficult to read - at least on my screen - due to the light color.
Steps to reproduce?
Versions
Android Studio version: N/A
API version of the emulator: N/A
Additional information
Include screenshots if they would be useful in clarifying the problem.
I am using the Chrome browser
In which task and step of the codelab can this issue be found?
2nd task - starter files
3rd task - Words app overview
Describe the problem
The files that are mentioned in the codelab 3rd task - Word app overview are not found in the starter branch
Steps to reproduce?
Versions
Android Studio version: 4.0
API version of the emulator: 30
Additional information
The files mentioned are -
but the starter branch has different files.
view here
In which task and step of the codelab can this issue be found?
Task 2
Step 5
Describe the problem
The code provided by the codelab for onCreateView (), throws an error in my Android Studio
Steps to reproduce?
Versions
Android Studio version: 4.1
API version of the emulator: Physical Device
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
I found that the code downloaded from the github repository is not the same as the image shown in the documentation
When my git clone is done, com.example.wordsapp will look like this
Describe the problem
I think it might be necessary to update that developer documentation
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
https://developer.android.com/codelabs/basic-android-kotlin-training-collections#6
There is no 'Next' button on the website, just a 'Back' button.
Step 1: "Open up WordAdapter and in the button's onClickListener in onBindViewHolder. Start by creating a URI for the search query."
Problem: There is no onClickListener in the onBindViewHolder, or in WordAdapter.kt in the provided code at all. There is one in the LetterAdapter, so it's unclear if WordAdapter is a typo and the LetterAdapter should be changed, or if WordAdapter needs one added.
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-fragments-navigation-component#0
In which task and step of the codelab can this issue be found?
Task 1 "Before you begin"
Describe the problem
It's a typo, t in fragment is missing in the third paragraph
"...You can even show multiple fragments at once on a single screen, such as a master-detail layout for tablet devices. In the example below, both the navigation UI on the left and the content on the right can each be contained in a separate !!!!!!!!!!!!!!!!!!!!!fragmen. !!!!!!!!!!!!!!!!!!!Both fragments exist simultaneously in the same activity.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
The 5th
Describe the problem
It is written that the binding classes are generated automatically by Android Studio, but what's failed to be mentioned is that Android Studio generates those classes only after the viewBinding property in the buildFeatures has been enabled by being set to true!
Steps to reproduce?
just go the 5th step of the codelab and read it
In which task and step of the codelab can this issue be found?
android-basics-kotlin-words-app-activities
Describe the problem
there is no .gitignore in android-basics-kotlin-words-app-activities
Steps to reproduce?
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-collections#4
In which task and step of the codelab can this issue be found?
Step 2
Describe the problem
The following text appears as a code block rather than regular text:
The startsWith()
function returns true if a string starts with the specified string. You can also tell it to ignore case, so "b" will match "b" or "B".
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Step 8
Describe the problem
Text says: ".. add an attribute called app:navHost and set it equal to .."
It should say: "... add an attribute called app:defaultNavHost and set it equal to .." to match with the next code snippet below this text.
In which task and step of the codelab can this issue be found?
Task "6. Set Up DetailActivity", step "Cleaning Up", item 5
Describe the problem
Text in the item asks the user whether he remembers code from next task (task 7):
"Remember when you performed the implicit intent in the WordAdapter...?"
Not a big deal, but it would be nice to have these things in the right order.
URL of codelab
Unit3> Fragments and the Navigation Component> 4. Create Fragment and layout Files> Step3
In which task and step of the codelab can this issue be found?
Describe the problem The step 3 says "Update tools:context in fragment_letter_list.xml to .LetterListFragment" but the image below contains "tools:context=".WordListFragment", this image belong to fragment_letter_list.xml
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Step 6(Se tup DetailActivity) paragraph 5
Describe the problem
This is paragraph 5:
While you're at it, you can also move any other hard coded value into the companion object in DetailActivity. Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search? Go ahead and move this to the companion object as a new constant called SEARCH_PREFIX. The companion object should now contain two constants.
The problem is that the step described as already done, is on the next step "7 Set up Implicit Intent. So it is confusing for somebody trying to remember and go searching backwards for something that it was never there, and finaly when gives up searching recalling his memory and moves to the next step, finding out that paragraph 5 refers to a next step. It is no big deal but I'm trying to help others from wasting time.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Configure MainActivity - Step 3
Describe the problem
The code setupActionBarWithNavController(navController) didn't work for me. I had to replace it with
NavigationUI.setupActionBarWithNavController(this, navController)
Steps to reproduce?
Versions
Android Studio version: 4.1.2
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
Fragments and the Navigation Component - https://developer.android.com/codelabs/basic-android-kotlin-training-fragments-navigation-component?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-kotlin-unit-3-pathway-2%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-training-fragments-navigation-component#3
In which task and step of the codelab can this issue be found?
THis section -
After the changes, the fragment layout files should look as follows.
fragment_letter_list.xml
Describe the problem
In this file = fragment_letter_list.xml
Update
tools:context=".WordListFragment">
to
tools:context=".LetterListFragment">
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-activities-intents
(and others)
In which task and step of the codelab can this issue be found?
In the "Get the code" section(s) it mentions to download the github code in zip.
Describe the problem
I fetched the code using "git clone". This the usual way. It is not natural to fetch code from github using zip (!!). I realized that the examples are using the "DetailActivity.kt", which is not the "main" branch.
Of course, you can point to the other branch, but this is not obvious for the novice or the fast reader.
Please, make sure the examples are in sync with the "main" branch or indicate short instructions to point to a specific branch otherwise (e.g.: git clone <repo>
& git checkout -t origin/starter
) .
Example:
``
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
https://developer.android.com/codelabs/basic-android-kotlin-training-collections
In Step 2, there is a line of text that is incorrectly showing in a code box.
The startsWith()
function returns true if a string starts with the specified string. You can also tell it to ignore case, so "b" will match "b" or "B".
Steps to reproduce?
This is see under Mozilla Firefox for Ubuntu canonical-1.0 v 84.0.2 (64-bit)
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-activities-intents
In which task and step of the codelab can this issue be found?
Step 8 : Set Up Menu and Icons
Describe the problem
The text : .... and "view agenda" (name it ic_linear_layout).
Should read : .... and "view List" (name it ic_linear_layout).
Steps to reproduce?
NA
Versions
Android Studio version: 4.1.1
API version of the emulator: 29
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
In which task and step of the codelab can this issue be found?
Step 4
Describe the problem
fragment_letter_list.xml contains
tools:context=".WordListFragment"
which should be
tools:context=".LetterListFragment"
No steps, just typo mistake
URL of codelab
In which task and step of the codelab can this issue be found?
Describe the problem
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Fragments and the Navigation Component, Step 4 Create Fragment and Layout files
Describe the problem
In the content for fragment_letter_list.xml at the bottom of the step, tool:context is falsely set to ".WordListFragment" instead of ".LetterListFragment"
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
In which task and step of the codelab can this issue be found?
Task: Activities and Intents
Step: 6) Setup Detail Activity
Describe the problem
"Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search?"
The above lines are from step 6 of activities and intents lesson. We learn about implicit intent in step 7 and has not yet set up an implicit intent as mentioned in the above lines.
In which task and step of the codelab can this issue be found?
In task 6, step 5-6
companion object {
val LETTER = "letter"
val SEARCH_PREFIX = "https://www.google.com/search?q="
}
val queryUrl: Uri = Uri.parse("${DetailActivity.SEARCH_PREFIX}${item}")
Describe the problem
In the above two steps, it requires to change the string "https://www.google.com/search?q=" into a constant. However, the variable in step 6 (queryUrl) haven't exist in this step. I think it should put after Task 7 (Setting up the intent).
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
In which task and step of the codelab can this issue be found?
Step 4: Create Fragment and layout Files
Describe the problem
In the code for [fragment_letter_list.xml], it says: [ tools:context=".WordListFragment" ], but I think it should be [ tools:context=".LetterListFragment" ]
By the way, I am really enjoying the courses; they are very well written, pleasant to read and I learn a lot. :)
Additional information
Include screenshots if they would be useful in clarifying the problem.
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-activities-intents#5
In which task and step of the codelab can this issue be found?
"cleaning up" (5) in task 6
Describe the problem
It says "While you're at it, you can also move any other hard coded value into the companion object in DetailActivity. Remember when you performed the implicit intent in the WordAdapter, you passed in part of the URL to perform a Google search? Go ahead and move this to the companion object as a new constant called SEARCH_PREFIX. The companion object should now contain two constants."
The implicit intent in the WordAdapter is in the next step and hasn't been completed before getting to this step.
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
task 5 step 2
it appears part of the page is in a code section and should just be in a text section, as it appears to be describing the
"The [startsWith()
](https://kotlinlang.org/api/latest" function and has a link to the docs
Steps to reproduce?
Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.