├── .gitignore
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
├── common-biis
├── .gitignore
├── README.md
├── complete
│ ├── .google
│ │ └── packaging.yaml
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── README.md
│ ├── app
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── google-services.json
│ │ ├── proguard-rules.pro
│ │ ├── proguardTest-rules.pro
│ │ └── src
│ │ │ ├── androidTestMock
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── android
│ │ │ │ └── architecture
│ │ │ │ └── blueprints
│ │ │ │ └── todoapp
│ │ │ │ └── tasks
│ │ │ │ ├── AppNavigationTest.kt
│ │ │ │ ├── TasksActivityTest.kt
│ │ │ │ └── TestUtils.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── android
│ │ │ │ │ └── architecture
│ │ │ │ │ └── blueprints
│ │ │ │ │ └── todoapp
│ │ │ │ │ ├── Event.kt
│ │ │ │ │ ├── ScrollChildSwipeRefreshLayout.kt
│ │ │ │ │ ├── ServiceLocator.kt
│ │ │ │ │ ├── TodoApplication.kt
│ │ │ │ │ ├── ViewModelFactory.kt
│ │ │ │ │ ├── addedittask
│ │ │ │ │ ├── AddEditTaskFragment.kt
│ │ │ │ │ └── AddEditTaskViewModel.kt
│ │ │ │ │ ├── data
│ │ │ │ │ ├── Result.kt
│ │ │ │ │ ├── Task.kt
│ │ │ │ │ └── source
│ │ │ │ │ │ ├── DefaultTasksRepository.kt
│ │ │ │ │ │ ├── TasksDataSource.kt
│ │ │ │ │ │ ├── TasksRepository.kt
│ │ │ │ │ │ ├── local
│ │ │ │ │ │ ├── TasksDao.kt
│ │ │ │ │ │ ├── TasksLocalDataSource.kt
│ │ │ │ │ │ └── ToDoDatabase.kt
│ │ │ │ │ │ └── remote
│ │ │ │ │ │ └── TasksRemoteDataSource.kt
│ │ │ │ │ ├── statistics
│ │ │ │ │ ├── StatisticsFragment.kt
│ │ │ │ │ ├── StatisticsUtils.kt
│ │ │ │ │ └── StatisticsViewModel.kt
│ │ │ │ │ ├── taskdetail
│ │ │ │ │ ├── TaskDetailFragment.kt
│ │ │ │ │ └── TaskDetailViewModel.kt
│ │ │ │ │ ├── tasks
│ │ │ │ │ ├── TasksActivity.kt
│ │ │ │ │ ├── TasksAdapter.kt
│ │ │ │ │ ├── TasksFilterType.kt
│ │ │ │ │ ├── TasksFragment.kt
│ │ │ │ │ ├── TasksListBindings.kt
│ │ │ │ │ └── TasksViewModel.kt
│ │ │ │ │ └── util
│ │ │ │ │ ├── EspressoIdlingResource.kt
│ │ │ │ │ ├── FragmentExt.kt
│ │ │ │ │ ├── SimpleCountingIdlingResource.kt
│ │ │ │ │ └── ViewExt.kt
│ │ │ └── res
│ │ │ │ ├── drawable
│ │ │ │ ├── drawer_item_color.xml
│ │ │ │ ├── ic_add.xml
│ │ │ │ ├── ic_assignment_turned_in_24dp.xml
│ │ │ │ ├── ic_check_circle_96dp.xml
│ │ │ │ ├── ic_done.xml
│ │ │ │ ├── ic_edit.xml
│ │ │ │ ├── ic_filter_list.xml
│ │ │ │ ├── ic_list.xml
│ │ │ │ ├── ic_menu.xml
│ │ │ │ ├── ic_search_black_24dp.xml
│ │ │ │ ├── ic_statistics.xml
│ │ │ │ ├── ic_statistics_100dp.xml
│ │ │ │ ├── ic_statistics_24dp.xml
│ │ │ │ ├── ic_verified_user_96dp.xml
│ │ │ │ ├── list_completed_touch_feedback.xml
│ │ │ │ ├── logo_no_fill.png
│ │ │ │ ├── touch_feedback.xml
│ │ │ │ └── trash_icon.png
│ │ │ │ ├── font
│ │ │ │ ├── opensans_font.xml
│ │ │ │ ├── opensans_regular.ttf
│ │ │ │ └── opensans_semibold.ttf
│ │ │ │ ├── layout
│ │ │ │ ├── addtask_frag.xml
│ │ │ │ ├── nav_header.xml
│ │ │ │ ├── statistics_frag.xml
│ │ │ │ ├── task_item.xml
│ │ │ │ ├── taskdetail_frag.xml
│ │ │ │ ├── tasks_act.xml
│ │ │ │ └── tasks_frag.xml
│ │ │ │ ├── menu
│ │ │ │ ├── drawer_actions.xml
│ │ │ │ ├── filter_tasks.xml
│ │ │ │ ├── taskdetail_fragment_menu.xml
│ │ │ │ └── tasks_fragment_menu.xml
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── navigation
│ │ │ │ └── nav_graph.xml
│ │ │ │ ├── values-v21
│ │ │ │ └── styles.xml
│ │ │ │ ├── values-w820dp
│ │ │ │ └── dimens.xml
│ │ │ │ ├── values
│ │ │ │ ├── arrays.xml
│ │ │ │ ├── attrs.xml
│ │ │ │ ├── colors.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ │ └── xml
│ │ │ │ └── shortcuts.xml
│ │ │ ├── sharedTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── android
│ │ │ │ └── architecture
│ │ │ │ └── blueprints
│ │ │ │ └── todoapp
│ │ │ │ ├── MainCoroutineRule.kt
│ │ │ │ ├── addedittask
│ │ │ │ └── AddEditTaskFragmentTest.kt
│ │ │ │ ├── data
│ │ │ │ └── source
│ │ │ │ │ ├── FakeRepository.kt
│ │ │ │ │ └── local
│ │ │ │ │ ├── TasksDaoTest.kt
│ │ │ │ │ └── TasksLocalDataSourceTest.kt
│ │ │ │ ├── statistics
│ │ │ │ └── StatisticsFragmentTest.kt
│ │ │ │ ├── taskdetail
│ │ │ │ └── TaskDetailFragmentTest.kt
│ │ │ │ ├── tasks
│ │ │ │ └── TasksFragmentTest.kt
│ │ │ │ └── util
│ │ │ │ ├── DataBindingIdlingResource.kt
│ │ │ │ └── TasksRepositoryExt.kt
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── android
│ │ │ │ └── architecture
│ │ │ │ └── blueprints
│ │ │ │ └── todoapp
│ │ │ │ ├── FakeFailingTasksRemoteDataSource.kt
│ │ │ │ ├── LiveDataTestUtil.kt
│ │ │ │ ├── TestUtil.kt
│ │ │ │ ├── addedittask
│ │ │ │ └── AddEditTaskViewModelTest.kt
│ │ │ │ ├── data
│ │ │ │ └── source
│ │ │ │ │ ├── DefaultTasksRepositoryTest.kt
│ │ │ │ │ └── FakeDataSource.kt
│ │ │ │ ├── statistics
│ │ │ │ ├── StatisticsUtilsTest.kt
│ │ │ │ └── StatisticsViewModelTest.kt
│ │ │ │ ├── taskdetail
│ │ │ │ └── TaskDetailViewModelTest.kt
│ │ │ │ └── tasks
│ │ │ │ └── TasksViewModelTest.kt
│ │ │ └── resources
│ │ │ └── mockito-extensions
│ │ │ └── org.mockito.plugins.MockMaker
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── media
│ └── to-do-demo.gif
└── starter
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── proguardTest-rules.pro
│ └── src
│ │ ├── androidTestMock
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── android
│ │ │ └── architecture
│ │ │ └── blueprints
│ │ │ └── todoapp
│ │ │ └── tasks
│ │ │ ├── AppNavigationTest.kt
│ │ │ ├── TasksActivityTest.kt
│ │ │ └── TestUtils.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── android
│ │ │ │ └── architecture
│ │ │ │ └── blueprints
│ │ │ │ └── todoapp
│ │ │ │ ├── Event.kt
│ │ │ │ ├── ScrollChildSwipeRefreshLayout.kt
│ │ │ │ ├── ServiceLocator.kt
│ │ │ │ ├── TodoApplication.kt
│ │ │ │ ├── ViewModelFactory.kt
│ │ │ │ ├── addedittask
│ │ │ │ ├── AddEditTaskFragment.kt
│ │ │ │ └── AddEditTaskViewModel.kt
│ │ │ │ ├── data
│ │ │ │ ├── Result.kt
│ │ │ │ ├── Task.kt
│ │ │ │ └── source
│ │ │ │ │ ├── DefaultTasksRepository.kt
│ │ │ │ │ ├── TasksDataSource.kt
│ │ │ │ │ ├── TasksRepository.kt
│ │ │ │ │ ├── local
│ │ │ │ │ ├── TasksDao.kt
│ │ │ │ │ ├── TasksLocalDataSource.kt
│ │ │ │ │ └── ToDoDatabase.kt
│ │ │ │ │ └── remote
│ │ │ │ │ └── TasksRemoteDataSource.kt
│ │ │ │ ├── statistics
│ │ │ │ ├── StatisticsFragment.kt
│ │ │ │ ├── StatisticsUtils.kt
│ │ │ │ └── StatisticsViewModel.kt
│ │ │ │ ├── taskdetail
│ │ │ │ ├── TaskDetailFragment.kt
│ │ │ │ └── TaskDetailViewModel.kt
│ │ │ │ ├── tasks
│ │ │ │ ├── TasksActivity.kt
│ │ │ │ ├── TasksAdapter.kt
│ │ │ │ ├── TasksFilterType.kt
│ │ │ │ ├── TasksFragment.kt
│ │ │ │ ├── TasksListBindings.kt
│ │ │ │ └── TasksViewModel.kt
│ │ │ │ └── util
│ │ │ │ ├── EspressoIdlingResource.kt
│ │ │ │ ├── FragmentExt.kt
│ │ │ │ ├── SimpleCountingIdlingResource.kt
│ │ │ │ └── ViewExt.kt
│ │ └── res
│ │ │ ├── drawable
│ │ │ ├── drawer_item_color.xml
│ │ │ ├── ic_add.xml
│ │ │ ├── ic_assignment_turned_in_24dp.xml
│ │ │ ├── ic_check_circle_96dp.xml
│ │ │ ├── ic_done.xml
│ │ │ ├── ic_edit.xml
│ │ │ ├── ic_filter_list.xml
│ │ │ ├── ic_list.xml
│ │ │ ├── ic_menu.xml
│ │ │ ├── ic_search_black_24dp.xml
│ │ │ ├── ic_statistics.xml
│ │ │ ├── ic_statistics_100dp.xml
│ │ │ ├── ic_statistics_24dp.xml
│ │ │ ├── ic_verified_user_96dp.xml
│ │ │ ├── list_completed_touch_feedback.xml
│ │ │ ├── logo_no_fill.png
│ │ │ ├── touch_feedback.xml
│ │ │ └── trash_icon.png
│ │ │ ├── font
│ │ │ ├── opensans_font.xml
│ │ │ ├── opensans_regular.ttf
│ │ │ └── opensans_semibold.ttf
│ │ │ ├── layout
│ │ │ ├── addtask_frag.xml
│ │ │ ├── nav_header.xml
│ │ │ ├── statistics_frag.xml
│ │ │ ├── task_item.xml
│ │ │ ├── taskdetail_frag.xml
│ │ │ ├── tasks_act.xml
│ │ │ └── tasks_frag.xml
│ │ │ ├── menu
│ │ │ ├── drawer_actions.xml
│ │ │ ├── filter_tasks.xml
│ │ │ ├── taskdetail_fragment_menu.xml
│ │ │ └── tasks_fragment_menu.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── navigation
│ │ │ └── nav_graph.xml
│ │ │ ├── values-v21
│ │ │ └── styles.xml
│ │ │ ├── values-w820dp
│ │ │ └── dimens.xml
│ │ │ ├── values
│ │ │ ├── arrays.xml
│ │ │ ├── attrs.xml
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ │ └── xml
│ │ │ └── shortcuts.xml
│ │ ├── sharedTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── android
│ │ │ └── architecture
│ │ │ └── blueprints
│ │ │ └── todoapp
│ │ │ ├── MainCoroutineRule.kt
│ │ │ ├── addedittask
│ │ │ └── AddEditTaskFragmentTest.kt
│ │ │ ├── data
│ │ │ └── source
│ │ │ │ ├── FakeRepository.kt
│ │ │ │ └── local
│ │ │ │ ├── TasksDaoTest.kt
│ │ │ │ └── TasksLocalDataSourceTest.kt
│ │ │ ├── statistics
│ │ │ └── StatisticsFragmentTest.kt
│ │ │ ├── taskdetail
│ │ │ └── TaskDetailFragmentTest.kt
│ │ │ ├── tasks
│ │ │ └── TasksFragmentTest.kt
│ │ │ └── util
│ │ │ ├── DataBindingIdlingResource.kt
│ │ │ └── TasksRepositoryExt.kt
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── android
│ │ │ └── architecture
│ │ │ └── blueprints
│ │ │ └── todoapp
│ │ │ ├── FakeFailingTasksRemoteDataSource.kt
│ │ │ ├── LiveDataTestUtil.kt
│ │ │ ├── TestUtil.kt
│ │ │ ├── addedittask
│ │ │ └── AddEditTaskViewModelTest.kt
│ │ │ ├── data
│ │ │ └── source
│ │ │ │ ├── DefaultTasksRepositoryTest.kt
│ │ │ │ └── FakeDataSource.kt
│ │ │ ├── statistics
│ │ │ ├── StatisticsUtilsTest.kt
│ │ │ └── StatisticsViewModelTest.kt
│ │ │ ├── taskdetail
│ │ │ └── TaskDetailViewModelTest.kt
│ │ │ └── tasks
│ │ │ └── TasksViewModelTest.kt
│ │ └── resources
│ │ └── mockito-extensions
│ │ └── org.mockito.plugins.MockMaker
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── dynamic-shortcuts
├── README.md
├── complete
│ ├── .google
│ │ └── packaging.yaml
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── app
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── android
│ │ │ │ └── architecture
│ │ │ │ └── blueprints
│ │ │ │ └── todoapp
│ │ │ │ ├── Event.kt
│ │ │ │ ├── ScrollChildSwipeRefreshLayout.kt
│ │ │ │ ├── ServiceLocator.kt
│ │ │ │ ├── TodoApplication.kt
│ │ │ │ ├── ViewModelFactory.kt
│ │ │ │ ├── addedittask
│ │ │ │ ├── AddEditTaskFragment.kt
│ │ │ │ └── AddEditTaskViewModel.kt
│ │ │ │ ├── data
│ │ │ │ ├── Result.kt
│ │ │ │ ├── Task.kt
│ │ │ │ └── source
│ │ │ │ │ ├── DefaultTasksRepository.kt
│ │ │ │ │ ├── ShortcutsRepository.kt
│ │ │ │ │ ├── TasksDataSource.kt
│ │ │ │ │ ├── TasksRepository.kt
│ │ │ │ │ ├── local
│ │ │ │ │ ├── TasksDao.kt
│ │ │ │ │ ├── TasksLocalDataSource.kt
│ │ │ │ │ └── ToDoDatabase.kt
│ │ │ │ │ └── remote
│ │ │ │ │ └── TasksRemoteDataSource.kt
│ │ │ │ ├── statistics
│ │ │ │ ├── StatisticsFragment.kt
│ │ │ │ ├── StatisticsUtils.kt
│ │ │ │ └── StatisticsViewModel.kt
│ │ │ │ ├── taskdetail
│ │ │ │ ├── TaskDetailFragment.kt
│ │ │ │ └── TaskDetailViewModel.kt
│ │ │ │ ├── tasks
│ │ │ │ ├── TasksActivity.kt
│ │ │ │ ├── TasksAdapter.kt
│ │ │ │ ├── TasksFilterType.kt
│ │ │ │ ├── TasksFragment.kt
│ │ │ │ ├── TasksListBindings.kt
│ │ │ │ └── TasksViewModel.kt
│ │ │ │ └── util
│ │ │ │ ├── FragmentExt.kt
│ │ │ │ └── ViewExt.kt
│ │ │ └── res
│ │ │ ├── drawable
│ │ │ ├── drawer_item_color.xml
│ │ │ ├── ic_add.xml
│ │ │ ├── ic_assignment_turned_in_24dp.xml
│ │ │ ├── ic_check_circle_96dp.xml
│ │ │ ├── ic_done.xml
│ │ │ ├── ic_edit.xml
│ │ │ ├── ic_filter_list.xml
│ │ │ ├── ic_list.xml
│ │ │ ├── ic_menu.xml
│ │ │ ├── ic_search_black_24dp.xml
│ │ │ ├── ic_statistics.xml
│ │ │ ├── ic_statistics_100dp.xml
│ │ │ ├── ic_statistics_24dp.xml
│ │ │ ├── ic_verified_user_96dp.xml
│ │ │ ├── list_completed_touch_feedback.xml
│ │ │ ├── logo_no_fill.png
│ │ │ ├── touch_feedback.xml
│ │ │ └── trash_icon.png
│ │ │ ├── font
│ │ │ ├── opensans_font.xml
│ │ │ ├── opensans_regular.ttf
│ │ │ └── opensans_semibold.ttf
│ │ │ ├── layout
│ │ │ ├── addtask_frag.xml
│ │ │ ├── nav_header.xml
│ │ │ ├── statistics_frag.xml
│ │ │ ├── task_item.xml
│ │ │ ├── taskdetail_frag.xml
│ │ │ ├── tasks_act.xml
│ │ │ └── tasks_frag.xml
│ │ │ ├── menu
│ │ │ ├── drawer_actions.xml
│ │ │ ├── filter_tasks.xml
│ │ │ ├── taskdetail_fragment_menu.xml
│ │ │ └── tasks_fragment_menu.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── navigation
│ │ │ └── nav_graph.xml
│ │ │ ├── values-v21
│ │ │ └── styles.xml
│ │ │ ├── values-w820dp
│ │ │ └── dimens.xml
│ │ │ ├── values
│ │ │ ├── arrays.xml
│ │ │ ├── attrs.xml
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ │ └── xml
│ │ │ └── shortcuts.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── media
│ ├── dynamic-shortcut-demo.gif
│ └── to-do-demo.gif
└── starter
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── android
│ │ │ └── architecture
│ │ │ └── blueprints
│ │ │ └── todoapp
│ │ │ ├── Event.kt
│ │ │ ├── ScrollChildSwipeRefreshLayout.kt
│ │ │ ├── ServiceLocator.kt
│ │ │ ├── TodoApplication.kt
│ │ │ ├── ViewModelFactory.kt
│ │ │ ├── addedittask
│ │ │ ├── AddEditTaskFragment.kt
│ │ │ └── AddEditTaskViewModel.kt
│ │ │ ├── data
│ │ │ ├── Result.kt
│ │ │ ├── Task.kt
│ │ │ └── source
│ │ │ │ ├── DefaultTasksRepository.kt
│ │ │ │ ├── TasksDataSource.kt
│ │ │ │ ├── TasksRepository.kt
│ │ │ │ ├── local
│ │ │ │ ├── TasksDao.kt
│ │ │ │ ├── TasksLocalDataSource.kt
│ │ │ │ └── ToDoDatabase.kt
│ │ │ │ └── remote
│ │ │ │ └── TasksRemoteDataSource.kt
│ │ │ ├── statistics
│ │ │ ├── StatisticsFragment.kt
│ │ │ ├── StatisticsUtils.kt
│ │ │ └── StatisticsViewModel.kt
│ │ │ ├── taskdetail
│ │ │ ├── TaskDetailFragment.kt
│ │ │ └── TaskDetailViewModel.kt
│ │ │ ├── tasks
│ │ │ ├── TasksActivity.kt
│ │ │ ├── TasksAdapter.kt
│ │ │ ├── TasksFilterType.kt
│ │ │ ├── TasksFragment.kt
│ │ │ ├── TasksListBindings.kt
│ │ │ └── TasksViewModel.kt
│ │ │ └── util
│ │ │ ├── FragmentExt.kt
│ │ │ └── ViewExt.kt
│ │ └── res
│ │ ├── drawable
│ │ ├── drawer_item_color.xml
│ │ ├── ic_add.xml
│ │ ├── ic_assignment_turned_in_24dp.xml
│ │ ├── ic_check_circle_96dp.xml
│ │ ├── ic_done.xml
│ │ ├── ic_edit.xml
│ │ ├── ic_filter_list.xml
│ │ ├── ic_list.xml
│ │ ├── ic_menu.xml
│ │ ├── ic_search_black_24dp.xml
│ │ ├── ic_statistics.xml
│ │ ├── ic_statistics_100dp.xml
│ │ ├── ic_statistics_24dp.xml
│ │ ├── ic_verified_user_96dp.xml
│ │ ├── list_completed_touch_feedback.xml
│ │ ├── logo_no_fill.png
│ │ ├── touch_feedback.xml
│ │ └── trash_icon.png
│ │ ├── font
│ │ ├── opensans_font.xml
│ │ ├── opensans_regular.ttf
│ │ └── opensans_semibold.ttf
│ │ ├── layout
│ │ ├── addtask_frag.xml
│ │ ├── nav_header.xml
│ │ ├── statistics_frag.xml
│ │ ├── task_item.xml
│ │ ├── taskdetail_frag.xml
│ │ ├── tasks_act.xml
│ │ └── tasks_frag.xml
│ │ ├── menu
│ │ ├── drawer_actions.xml
│ │ ├── filter_tasks.xml
│ │ ├── taskdetail_fragment_menu.xml
│ │ └── tasks_fragment_menu.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxxhdpi
│ │ └── ic_launcher.png
│ │ ├── navigation
│ │ └── nav_graph.xml
│ │ ├── values-v21
│ │ └── styles.xml
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ ├── values
│ │ ├── arrays.xml
│ │ ├── attrs.xml
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ │ └── xml
│ │ └── shortcuts.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── fitness-biis
├── README.md
├── complete
│ ├── .google
│ │ └── packaging.yaml
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── app
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── ic_launcher-web.png
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── devrel
│ │ │ │ └── android
│ │ │ │ └── fitactions
│ │ │ │ ├── Const.kt
│ │ │ │ ├── FitApp.kt
│ │ │ │ ├── FitMainActivity.kt
│ │ │ │ ├── home
│ │ │ │ ├── FitStatsAdapter.kt
│ │ │ │ └── FitStatsFragment.kt
│ │ │ │ ├── model
│ │ │ │ ├── FitActivity.kt
│ │ │ │ ├── FitDatabase.kt
│ │ │ │ ├── FitRepository.kt
│ │ │ │ └── FitStats.kt
│ │ │ │ └── tracking
│ │ │ │ ├── FitTrackingFragment.kt
│ │ │ │ └── FitTrackingService.kt
│ │ │ └── res
│ │ │ ├── drawable
│ │ │ ├── as_start_stop_toggle.xml
│ │ │ ├── avd_start_stop_toggle.xml
│ │ │ ├── ic_launcher_background.xml
│ │ │ ├── ic_launcher_foreground.xml
│ │ │ ├── ic_run.xml
│ │ │ ├── vd_start.xml
│ │ │ └── vd_stop.xml
│ │ │ ├── layout
│ │ │ ├── fit_activity.xml
│ │ │ ├── fit_stats_fragment.xml
│ │ │ ├── fit_stats_row.xml
│ │ │ └── fit_tracking_fragment.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ ├── ic_launcher.xml
│ │ │ └── ic_launcher_round.xml
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── values
│ │ │ ├── arrays.xml
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ │ └── xml
│ │ │ └── shortcuts.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── media
│ └── fit-actions-demo.gif
└── starter
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── ic_launcher-web.png
│ │ ├── java
│ │ └── com
│ │ │ └── devrel
│ │ │ └── android
│ │ │ └── fitactions
│ │ │ ├── Const.kt
│ │ │ ├── FitApp.kt
│ │ │ ├── FitMainActivity.kt
│ │ │ ├── home
│ │ │ ├── FitStatsAdapter.kt
│ │ │ └── FitStatsFragment.kt
│ │ │ ├── model
│ │ │ ├── FitActivity.kt
│ │ │ ├── FitDatabase.kt
│ │ │ ├── FitRepository.kt
│ │ │ └── FitStats.kt
│ │ │ └── tracking
│ │ │ ├── FitTrackingFragment.kt
│ │ │ └── FitTrackingService.kt
│ │ └── res
│ │ ├── drawable
│ │ ├── as_start_stop_toggle.xml
│ │ ├── avd_start_stop_toggle.xml
│ │ ├── ic_launcher_background.xml
│ │ ├── ic_launcher_foreground.xml
│ │ ├── ic_run.xml
│ │ ├── vd_start.xml
│ │ └── vd_stop.xml
│ │ ├── layout
│ │ ├── fit_activity.xml
│ │ ├── fit_stats_fragment.xml
│ │ ├── fit_stats_row.xml
│ │ └── fit_tracking_fragment.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── values
│ │ ├── arrays.xml
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ │ └── xml
│ │ └── shortcuts.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── widget
├── README.md
├── complete
├── .google
│ └── packaging.yaml
├── CONTRIBUTING.md
├── LICENSE
├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── ic_launcher-web.png
│ │ ├── java
│ │ └── com
│ │ │ └── devrel
│ │ │ └── android
│ │ │ └── fitactions
│ │ │ ├── Const.kt
│ │ │ ├── FitMainActivity.kt
│ │ │ ├── LiveDataExtensions.kt
│ │ │ ├── home
│ │ │ ├── FitStatsAdapter.kt
│ │ │ └── FitStatsFragment.kt
│ │ │ ├── model
│ │ │ ├── FitActivity.kt
│ │ │ ├── FitDatabase.kt
│ │ │ ├── FitRepository.kt
│ │ │ └── FitStats.kt
│ │ │ ├── tracking
│ │ │ ├── FitTrackingFragment.kt
│ │ │ └── FitTrackingService.kt
│ │ │ └── widgets
│ │ │ ├── StatsWidget.kt
│ │ │ └── StatsWidgetProvider.kt
│ │ └── res
│ │ ├── drawable-v21
│ │ ├── app_widget_background.xml
│ │ └── app_widget_inner_view_background.xml
│ │ ├── drawable
│ │ ├── as_start_stop_toggle.xml
│ │ ├── avd_start_stop_toggle.xml
│ │ ├── ic_launcher_background.xml
│ │ ├── ic_launcher_foreground.xml
│ │ ├── ic_run.xml
│ │ ├── vd_start.xml
│ │ └── vd_stop.xml
│ │ ├── layout
│ │ ├── fit_activity.xml
│ │ ├── fit_stats_fragment.xml
│ │ ├── fit_stats_row.xml
│ │ ├── fit_tracking_fragment.xml
│ │ └── stats_widget.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── values-night-v31
│ │ └── themes.xml
│ │ ├── values-v21
│ │ └── styles.xml
│ │ ├── values-v31
│ │ ├── styles.xml
│ │ └── themes.xml
│ │ ├── values
│ │ ├── arrays.xml
│ │ ├── attrs.xml
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ ├── styles.xml
│ │ └── themes.xml
│ │ └── xml
│ │ ├── shortcuts.xml
│ │ └── stats_widget.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── media
└── widget-demo.gif
└── starter
├── CONTRIBUTING.md
├── LICENSE
├── app
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── ic_launcher-web.png
│ ├── java
│ └── com
│ │ └── devrel
│ │ └── android
│ │ └── fitactions
│ │ ├── Const.kt
│ │ ├── FitMainActivity.kt
│ │ ├── LiveDataExtensions.kt
│ │ ├── home
│ │ ├── FitStatsAdapter.kt
│ │ └── FitStatsFragment.kt
│ │ ├── model
│ │ ├── FitActivity.kt
│ │ ├── FitDatabase.kt
│ │ ├── FitRepository.kt
│ │ └── FitStats.kt
│ │ ├── tracking
│ │ ├── FitTrackingFragment.kt
│ │ └── FitTrackingService.kt
│ │ └── widgets
│ │ ├── StatsWidget.kt
│ │ └── StatsWidgetProvider.kt
│ └── res
│ ├── drawable-v21
│ ├── app_widget_background.xml
│ └── app_widget_inner_view_background.xml
│ ├── drawable
│ ├── as_start_stop_toggle.xml
│ ├── avd_start_stop_toggle.xml
│ ├── ic_launcher_background.xml
│ ├── ic_launcher_foreground.xml
│ ├── ic_run.xml
│ ├── vd_start.xml
│ └── vd_stop.xml
│ ├── layout
│ ├── fit_activity.xml
│ ├── fit_stats_fragment.xml
│ ├── fit_stats_row.xml
│ ├── fit_tracking_fragment.xml
│ └── stats_widget.xml
│ ├── mipmap-anydpi-v26
│ ├── ic_launcher.xml
│ └── ic_launcher_round.xml
│ ├── mipmap-hdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-mdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xxhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── mipmap-xxxhdpi
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
│ ├── values-night-v31
│ └── themes.xml
│ ├── values-v21
│ └── styles.xml
│ ├── values-v31
│ ├── styles.xml
│ └── themes.xml
│ ├── values
│ ├── arrays.xml
│ ├── attrs.xml
│ ├── colors.xml
│ ├── dimens.xml
│ ├── strings.xml
│ ├── styles.xml
│ └── themes.xml
│ └── xml
│ ├── shortcuts.xml
│ └── stats_widget.xml
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
/.gitignore:
--------------------------------------------------------------------------------
1 | # built application files
2 | *.apk
3 | *.ap_
4 |
5 | # Mac files
6 | .DS_Store
7 |
8 | # files for the dex VM
9 | *.dex
10 |
11 | # Java class files
12 | *.class
13 |
14 | # generated files
15 | bin/
16 | gen/
17 |
18 | # Ignore gradle files
19 | .gradle/
20 | build/
21 |
22 | # Local configuration file (sdk path, etc)
23 | local.properties
24 |
25 | # Proguard folder generated by Eclipse
26 | proguard/
27 | proguard-project.txt
28 |
29 | # Eclipse files
30 | .project
31 | .classpath
32 | .settings/
33 |
34 | # Android Studio/IDEA
35 | *.iml
36 | .idea
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # How to Contribute
2 |
3 | We'd love to accept your patches and contributions to this project. There are
4 | just a few small guidelines you need to follow.
5 |
6 | ## Contributor License Agreement
7 |
8 | Contributions to this project must be accompanied by a Contributor License
9 | Agreement. You (or your employer) retain the copyright to your contribution,
10 | this simply gives us permission to use and redistribute your contributions as
11 | part of the project. Head over to to see
12 | your current agreements on file or to sign a new one.
13 |
14 | You generally only need to submit a CLA once, so if you've already submitted one
15 | (even if it was for a different project), you probably don't need to do it
16 | again.
17 |
18 | ## Code reviews
19 |
20 | All submissions, including submissions by project members, require review. We
21 | use GitHub pull requests for this purpose. Consult
22 | [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
23 | information on using pull requests.
24 |
25 | ## Community Guidelines
26 |
27 | This project follows [Google's Open Source Community
28 | Guidelines](https://opensource.google.com/conduct/).
--------------------------------------------------------------------------------
/common-biis/.gitignore:
--------------------------------------------------------------------------------
1 | # built application files
2 | *.apk
3 | *.ap_
4 |
5 | # Mac files
6 | .DS_Store
7 |
8 | # files for the dex VM
9 | *.dex
10 |
11 | # Java class files
12 | *.class
13 |
14 | # generated files
15 | bin/
16 | gen/
17 |
18 | # Ignore gradle files
19 | .gradle/
20 | build/
21 |
22 | # Local configuration file (sdk path, etc)
23 | local.properties
24 |
25 | # Proguard folder generated by Eclipse
26 | proguard/
27 | proguard-project.txt
28 |
29 | # Eclipse files
30 | .project
31 | .classpath
32 | .settings/
33 |
34 | # Android Studio/IDEA
35 | *.iml
36 | .idea
--------------------------------------------------------------------------------
/common-biis/complete/.google/packaging.yaml:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Google LLC
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | #
15 | # This file is used by Google as part of our samples packaging process.
16 | # End users may safely ignore this file. It has no relevance to other systems.
17 | ---
18 | status: PUBLISHED
19 | technologies: [Android]
20 | categories: [app-actions]
21 | languages: [Kotlin]
22 | solutions: [Mobile]
23 | github: android/app-actions
24 | level: intermediate
25 | apiRefs:
26 | license: apache2
27 |
--------------------------------------------------------------------------------
/common-biis/complete/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/common-biis/complete/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | -dontoptimize
2 |
3 | # Some methods are only called from tests, so make sure the shrinker keeps them.
4 | -keep class com.example.android.architecture.blueprints.** { *; }
5 |
6 | -keep class androidx.drawerlayout.widget.DrawerLayout { *; }
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -keep class com.google.common.base.Preconditions { *; }
13 |
14 | -keep class androidx.room.RoomDataBase { *; }
15 | -keep class androidx.room.Room { *; }
16 | -keep class android.arch.** { *; }
17 |
18 | # Proguard rules that are applied to your test apk/code.
19 | -ignorewarnings
20 |
21 | -keepattributes *Annotation*
22 |
23 | -dontnote junit.framework.**
24 | -dontnote junit.runner.**
25 |
26 | -dontwarn androidx.test.**
27 | -dontwarn org.junit.**
28 | -dontwarn org.hamcrest.**
29 | -dontwarn com.squareup.javawriter.JavaWriter
30 | # Uncomment this if you use Mockito
31 | -dontwarn org.mockito.**
32 |
--------------------------------------------------------------------------------
/common-biis/complete/app/proguardTest-rules.pro:
--------------------------------------------------------------------------------
1 | # Proguard rules that are applied to your test apk/code.
2 | -ignorewarnings
3 | -dontoptimize
4 |
5 | -keepattributes *Annotation*
6 |
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -dontnote junit.framework.**
13 | -dontnote junit.runner.**
14 |
15 | -dontwarn androidx.test.**
16 | -dontwarn org.junit.**
17 | -dontwarn org.hamcrest.**
18 | -dontwarn com.squareup.javawriter.JavaWriter
19 | # Uncomment this if you use Mockito
20 | -dontwarn org.mockito.**
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/drawer_item_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_check_circle_96dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
23 |
26 |
27 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_done.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_edit.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_filter_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_statistics.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_statistics_100dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_statistics_24dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/ic_verified_user_96dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
28 |
29 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/list_completed_touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/logo_no_fill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/drawable/logo_no_fill.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/drawable/trash_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/drawable/trash_icon.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/font/opensans_font.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
23 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/font/opensans_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/font/opensans_regular.ttf
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/font/opensans_semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/font/opensans_semibold.ttf
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/menu/drawer_actions.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
28 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/menu/filter_tasks.xml:
--------------------------------------------------------------------------------
1 |
16 |
27 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/menu/taskdetail_fragment_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
25 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
21 | 64dp
22 |
23 | 24dp
24 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 | #FFFFF0
19 | #263238
20 | #2E7D32
21 | #757575
22 |
23 | #CCCCCC
24 |
25 | #CFD8DC
26 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 | 16dp
20 | 16dp
21 |
22 | 16dp
23 |
24 | 8dp
25 | 192dp
26 | 16dp
27 | 100dp
28 |
29 |
30 |
--------------------------------------------------------------------------------
/common-biis/complete/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker:
--------------------------------------------------------------------------------
1 | mock-maker-inline
2 |
--------------------------------------------------------------------------------
/common-biis/complete/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
19 | android.enableJetifier=true
20 | android.useAndroidX=true
21 | kapt.incremental.apt=true
22 |
--------------------------------------------------------------------------------
/common-biis/complete/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/complete/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/common-biis/complete/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Jun 08 22:50:06 PDT 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
7 |
--------------------------------------------------------------------------------
/common-biis/complete/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/common-biis/media/to-do-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/media/to-do-demo.gif
--------------------------------------------------------------------------------
/common-biis/starter/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/common-biis/starter/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | -dontoptimize
2 |
3 | # Some methods are only called from tests, so make sure the shrinker keeps them.
4 | -keep class com.example.android.architecture.blueprints.** { *; }
5 |
6 | -keep class androidx.drawerlayout.widget.DrawerLayout { *; }
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -keep class com.google.common.base.Preconditions { *; }
13 |
14 | -keep class androidx.room.RoomDataBase { *; }
15 | -keep class androidx.room.Room { *; }
16 | -keep class android.arch.** { *; }
17 |
18 | # Proguard rules that are applied to your test apk/code.
19 | -ignorewarnings
20 |
21 | -keepattributes *Annotation*
22 |
23 | -dontnote junit.framework.**
24 | -dontnote junit.runner.**
25 |
26 | -dontwarn androidx.test.**
27 | -dontwarn org.junit.**
28 | -dontwarn org.hamcrest.**
29 | -dontwarn com.squareup.javawriter.JavaWriter
30 | # Uncomment this if you use Mockito
31 | -dontwarn org.mockito.**
32 |
--------------------------------------------------------------------------------
/common-biis/starter/app/proguardTest-rules.pro:
--------------------------------------------------------------------------------
1 | # Proguard rules that are applied to your test apk/code.
2 | -ignorewarnings
3 | -dontoptimize
4 |
5 | -keepattributes *Annotation*
6 |
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -dontnote junit.framework.**
13 | -dontnote junit.runner.**
14 |
15 | -dontwarn androidx.test.**
16 | -dontwarn org.junit.**
17 | -dontwarn org.hamcrest.**
18 | -dontwarn com.squareup.javawriter.JavaWriter
19 | # Uncomment this if you use Mockito
20 | -dontwarn org.mockito.**
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/drawer_item_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_check_circle_96dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
23 |
26 |
27 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_done.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_edit.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_filter_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_statistics.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_statistics_100dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_statistics_24dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/ic_verified_user_96dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
28 |
29 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/list_completed_touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/logo_no_fill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/drawable/logo_no_fill.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/drawable/trash_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/drawable/trash_icon.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/font/opensans_font.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
23 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/font/opensans_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/font/opensans_regular.ttf
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/font/opensans_semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/font/opensans_semibold.ttf
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/menu/drawer_actions.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
28 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/menu/filter_tasks.xml:
--------------------------------------------------------------------------------
1 |
16 |
27 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/menu/taskdetail_fragment_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
25 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
21 | 64dp
22 |
23 | 24dp
24 |
25 |
26 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 | #FFFFF0
19 | #263238
20 | #2E7D32
21 | #757575
22 |
23 | #CCCCCC
24 |
25 | #CFD8DC
26 |
27 |
28 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 | 16dp
20 | 16dp
21 |
22 | 16dp
23 |
24 | 8dp
25 | 192dp
26 | 16dp
27 | 100dp
28 |
29 |
30 |
--------------------------------------------------------------------------------
/common-biis/starter/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker:
--------------------------------------------------------------------------------
1 | mock-maker-inline
2 |
--------------------------------------------------------------------------------
/common-biis/starter/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
19 | android.enableJetifier=true
20 | android.useAndroidX=true
21 | kapt.incremental.apt=true
22 |
--------------------------------------------------------------------------------
/common-biis/starter/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/common-biis/starter/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/common-biis/starter/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Jun 08 22:50:06 PDT 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
7 |
--------------------------------------------------------------------------------
/common-biis/starter/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/.google/packaging.yaml:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Google LLC
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | #
15 | # This file is used by Google as part of our samples packaging process.
16 | # End users may safely ignore this file. It has no relevance to other systems.
17 | ---
18 | status: PUBLISHED
19 | technologies: [Android]
20 | categories: [app-actions]
21 | languages: [Kotlin]
22 | solutions: [Mobile]
23 | github: android/app-actions
24 | level: intermediate
25 | apiRefs:
26 | license: apache2
27 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | -dontoptimize
2 |
3 | # Some methods are only called from tests, so make sure the shrinker keeps them.
4 | -keep class com.example.android.architecture.blueprints.** { *; }
5 |
6 | -keep class androidx.drawerlayout.widget.DrawerLayout { *; }
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -keep class com.google.common.base.Preconditions { *; }
13 |
14 | -keep class androidx.room.RoomDataBase { *; }
15 | -keep class androidx.room.Room { *; }
16 | -keep class android.arch.** { *; }
17 |
18 | # Proguard rules that are applied to your test apk/code.
19 | -ignorewarnings
20 |
21 | -keepattributes *Annotation*
22 |
23 | -dontnote junit.framework.**
24 | -dontnote junit.runner.**
25 |
26 | -dontwarn androidx.test.**
27 | -dontwarn org.junit.**
28 | -dontwarn org.hamcrest.**
29 | -dontwarn com.squareup.javawriter.JavaWriter
30 | # Uncomment this if you use Mockito
31 | -dontwarn org.mockito.**
32 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/drawer_item_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_check_circle_96dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
23 |
26 |
27 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_done.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_edit.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_filter_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_statistics.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_statistics_100dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
24 |
27 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_statistics_24dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/ic_verified_user_96dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
28 |
29 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/list_completed_touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/logo_no_fill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/drawable/logo_no_fill.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/drawable/trash_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/drawable/trash_icon.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/font/opensans_font.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
23 |
27 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/font/opensans_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/font/opensans_regular.ttf
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/font/opensans_semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/font/opensans_semibold.ttf
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/menu/drawer_actions.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/menu/filter_tasks.xml:
--------------------------------------------------------------------------------
1 |
16 |
27 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/menu/taskdetail_fragment_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
25 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
21 | 64dp
22 |
23 | 24dp
24 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 | #FFFFF0
19 | #263238
20 | #2E7D32
21 | #757575
22 |
23 | #CCCCCC
24 |
25 | #CFD8DC
26 |
27 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
19 | android.enableJetifier=true
20 | android.useAndroidX=true
21 | kapt.incremental.apt=true
22 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/complete/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Jun 08 22:50:06 PDT 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
7 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/complete/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/media/dynamic-shortcut-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/media/dynamic-shortcut-demo.gif
--------------------------------------------------------------------------------
/dynamic-shortcuts/media/to-do-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/media/to-do-demo.gif
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | -dontoptimize
2 |
3 | # Some methods are only called from tests, so make sure the shrinker keeps them.
4 | -keep class com.example.android.architecture.blueprints.** { *; }
5 |
6 | -keep class androidx.drawerlayout.widget.DrawerLayout { *; }
7 | -keep class androidx.test.espresso.**
8 | # keep the class and specified members from being removed or renamed
9 | -keep class androidx.test.espresso.IdlingRegistry { *; }
10 | -keep class androidx.test.espresso.IdlingResource { *; }
11 |
12 | -keep class com.google.common.base.Preconditions { *; }
13 |
14 | -keep class androidx.room.RoomDataBase { *; }
15 | -keep class androidx.room.Room { *; }
16 | -keep class android.arch.** { *; }
17 |
18 | # Proguard rules that are applied to your test apk/code.
19 | -ignorewarnings
20 |
21 | -keepattributes *Annotation*
22 |
23 | -dontnote junit.framework.**
24 | -dontnote junit.runner.**
25 |
26 | -dontwarn androidx.test.**
27 | -dontwarn org.junit.**
28 | -dontwarn org.hamcrest.**
29 | -dontwarn com.squareup.javawriter.JavaWriter
30 | # Uncomment this if you use Mockito
31 | -dontwarn org.mockito.**
32 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/drawer_item_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_check_circle_96dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
23 |
26 |
27 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_done.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_edit.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_filter_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_list.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_statistics.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_statistics_24dp.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
22 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/ic_verified_user_96dp.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
25 |
28 |
29 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/list_completed_touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/logo_no_fill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/drawable/logo_no_fill.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/touch_feedback.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/drawable/trash_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/drawable/trash_icon.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/font/opensans_font.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
23 |
27 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/font/opensans_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/font/opensans_regular.ttf
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/font/opensans_semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/font/opensans_semibold.ttf
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/menu/drawer_actions.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/menu/filter_tasks.xml:
--------------------------------------------------------------------------------
1 |
16 |
27 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/menu/taskdetail_fragment_menu.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
25 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
21 | 64dp
22 |
23 | 24dp
24 |
25 |
26 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 | #FFFFF0
19 | #263238
20 | #2E7D32
21 | #757575
22 |
23 | #CCCCCC
24 |
25 | #CFD8DC
26 |
27 |
28 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
19 | android.enableJetifier=true
20 | android.useAndroidX=true
21 | kapt.incremental.apt=true
22 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/dynamic-shortcuts/starter/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Jun 08 22:50:06 PDT 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
7 |
--------------------------------------------------------------------------------
/dynamic-shortcuts/starter/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/fitness-biis/complete/.google/packaging.yaml:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Google LLC
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | #
15 | # This file is used by Google as part of our samples packaging process.
16 | # End users may safely ignore this file. It has no relevance to other systems.
17 | ---
18 | status: PUBLISHED
19 | technologies: [Android]
20 | categories: [app-actions]
21 | languages: [Kotlin]
22 | solutions: [Mobile]
23 | github: android/app-actions
24 | level: intermediate
25 | apiRefs:
26 | license: apache2
27 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/java/com/devrel/android/fitactions/Const.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | /**
21 | * Static object that defines the different BIIs
22 | */
23 | object BiiIntents {
24 | const val START_EXERCISE = "exerciseType"
25 | const val STOP_EXERCISE = "stopExercise"
26 |
27 | object Actions {
28 | const val ACTION_TOKEN_EXTRA = "actions.fulfillment.extra.ACTION_TOKEN"
29 | }
30 | }
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/java/com/devrel/android/fitactions/model/FitStats.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions.model
19 |
20 | /**
21 | * Entity that contains the total user stats.
22 | */
23 | data class FitStats(val totalCount: Int, val totalDistanceMeters: Double, val totalDurationMs: Long)
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/layout/fit_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
25 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 | #5382E8
21 | #2B4479
22 | #EAA51D
23 |
24 | #81D4FA
25 |
26 |
--------------------------------------------------------------------------------
/fitness-biis/complete/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | 16dp
20 |
21 |
--------------------------------------------------------------------------------
/fitness-biis/complete/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/complete/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/fitness-biis/complete/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Thu Nov 07 16:43:48 GMT 2019
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
7 |
--------------------------------------------------------------------------------
/fitness-biis/complete/settings.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | include ':app'
19 |
--------------------------------------------------------------------------------
/fitness-biis/media/fit-actions-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/media/fit-actions-demo.gif
--------------------------------------------------------------------------------
/fitness-biis/starter/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/java/com/devrel/android/fitactions/Const.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | /**
21 | * Static object that defines the different BIIs
22 | */
23 | object BiiIntents {
24 | const val START_EXERCISE = "exerciseType"
25 | const val STOP_EXERCISE = "stopExercise"
26 |
27 | object Actions {
28 | const val ACTION_TOKEN_EXTRA = "actions.fulfillment.extra.ACTION_TOKEN"
29 | }
30 | }
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/java/com/devrel/android/fitactions/model/FitStats.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions.model
19 |
20 | /**
21 | * Entity that contains the total user stats.
22 | */
23 | data class FitStats(val totalCount: Int, val totalDistanceMeters: Double, val totalDurationMs: Long)
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/layout/fit_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
25 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/values/arrays.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 | #5382E8
21 | #2B4479
22 | #EAA51D
23 |
24 | #81D4FA
25 |
26 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | 16dp
20 |
21 |
--------------------------------------------------------------------------------
/fitness-biis/starter/app/src/main/res/xml/shortcuts.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/fitness-biis/starter/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/fitness-biis/starter/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/fitness-biis/starter/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Thu Nov 07 16:43:48 GMT 2019
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
7 |
--------------------------------------------------------------------------------
/fitness-biis/starter/settings.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | include ':app'
19 |
--------------------------------------------------------------------------------
/widget/complete/.google/packaging.yaml:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Google LLC
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | #
15 | # This file is used by Google as part of our samples packaging process.
16 | # End users may safely ignore this file. It has no relevance to other systems.
17 | ---
18 | status: PUBLISHED
19 | technologies: [Android]
20 | categories: [app-actions]
21 | languages: [Kotlin]
22 | solutions: [Mobile]
23 | github: android/app-actions
24 | level: intermediate
25 | apiRefs:
26 | license: apache2
27 |
--------------------------------------------------------------------------------
/widget/complete/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/widget/complete/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/java/com/devrel/android/fitactions/Const.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | /**
21 | * Static object that defines the different BIIs
22 | * https://developers.google.com/assistant/app/reference/built-in-intents
23 | */
24 | object BiiIntents {
25 | const val START_EXERCISE = "exerciseType"
26 | const val STOP_EXERCISE = "stopExercise"
27 |
28 | object Actions {
29 | const val ACTION_TOKEN_EXTRA = "actions.fulfillment.extra.ACTION_TOKEN"
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/java/com/devrel/android/fitactions/LiveDataExtensions.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | import androidx.lifecycle.LiveData
21 | import androidx.lifecycle.Observer
22 |
23 | /**
24 | * Create single use observer for activity LiveData
25 | */
26 | fun LiveData.observeOnce(observer: Observer) {
27 | observeForever(object : Observer {
28 | override fun onChanged(t: T?) {
29 | observer.onChanged(t)
30 | removeObserver(this)
31 | }
32 | })
33 | }
--------------------------------------------------------------------------------
/widget/complete/app/src/main/java/com/devrel/android/fitactions/model/FitStats.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions.model
19 |
20 | /**
21 | * Entity that contains the total user stats.
22 | */
23 | data class FitStats(val totalCount: Int, val totalDistanceMeters: Double, val totalDurationMs: Long)
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/drawable-v21/app_widget_background.xml:
--------------------------------------------------------------------------------
1 |
5 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/drawable-v21/app_widget_inner_view_background.xml:
--------------------------------------------------------------------------------
1 |
5 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/layout/fit_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
25 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values-night-v31/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
11 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values-v31/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values-v31/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | #5382E8
20 | #2B4479
21 | #EAA51D
22 |
23 | #81D4FA
24 | #FFE1F5FE
25 | #FF81D4FA
26 | #FF039BE5
27 | #FF01579B
28 |
29 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | 16dp
20 |
21 |
25 | 0dp
26 |
27 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/complete/app/src/main/res/xml/stats_widget.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/widget/complete/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | buildscript {
19 |
20 | ext.kotlin_version = '1.6.10'
21 |
22 | repositories {
23 | google()
24 | mavenCentral()
25 | }
26 | dependencies {
27 | classpath 'com.android.tools.build:gradle:7.0.4'
28 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
29 | }
30 | }
31 |
32 | allprojects {
33 | repositories {
34 | google()
35 | mavenCentral()
36 | }
37 | }
38 |
39 | task clean(type: Delete) {
40 | delete rootProject.buildDir
41 | }
42 |
--------------------------------------------------------------------------------
/widget/complete/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/complete/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/widget/complete/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright 2019 Google LLC
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # https://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 | #
17 | distributionBase=GRADLE_USER_HOME
18 | distributionPath=wrapper/dists
19 | zipStoreBase=GRADLE_USER_HOME
20 | zipStorePath=wrapper/dists
21 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
22 |
--------------------------------------------------------------------------------
/widget/complete/settings.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | include ':app'
19 |
--------------------------------------------------------------------------------
/widget/media/widget-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/media/widget-demo.gif
--------------------------------------------------------------------------------
/widget/starter/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/widget/starter/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/java/com/devrel/android/fitactions/Const.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | /**
21 | * Static object that defines the different BIIs
22 | * https://developers.google.com/assistant/app/reference/built-in-intents
23 | */
24 | object BiiIntents {
25 | const val START_EXERCISE = "exerciseType"
26 | const val STOP_EXERCISE = "stopExercise"
27 |
28 | object Actions {
29 | const val ACTION_TOKEN_EXTRA = "actions.fulfillment.extra.ACTION_TOKEN"
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/java/com/devrel/android/fitactions/LiveDataExtensions.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions
19 |
20 | import androidx.lifecycle.LiveData
21 | import androidx.lifecycle.Observer
22 |
23 | /**
24 | * Create single use observer for activity LiveData
25 | */
26 | fun LiveData.observeOnce(observer: Observer) {
27 | observeForever(object : Observer {
28 | override fun onChanged(t: T?) {
29 | observer.onChanged(t)
30 | removeObserver(this)
31 | }
32 | })
33 | }
--------------------------------------------------------------------------------
/widget/starter/app/src/main/java/com/devrel/android/fitactions/model/FitStats.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | package com.devrel.android.fitactions.model
19 |
20 | /**
21 | * Entity that contains the total user stats.
22 | */
23 | data class FitStats(val totalCount: Int, val totalDistanceMeters: Double, val totalDurationMs: Long)
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/drawable-v21/app_widget_background.xml:
--------------------------------------------------------------------------------
1 |
5 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/drawable-v21/app_widget_inner_view_background.xml:
--------------------------------------------------------------------------------
1 |
5 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/layout/fit_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
25 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values-night-v31/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
11 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values-v31/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values-v31/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | #5382E8
20 | #2B4479
21 | #EAA51D
22 |
23 | #81D4FA
24 | #FFE1F5FE
25 | #FF81D4FA
26 | #FF039BE5
27 | #FF01579B
28 |
29 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 | 16dp
20 |
21 |
25 | 0dp
26 |
27 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widget/starter/app/src/main/res/xml/stats_widget.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/widget/starter/build.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | buildscript {
19 |
20 | ext.kotlin_version = '1.6.10'
21 |
22 | repositories {
23 | google()
24 | mavenCentral()
25 | }
26 | dependencies {
27 | classpath 'com.android.tools.build:gradle:7.0.4'
28 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
29 | }
30 | }
31 |
32 | allprojects {
33 | repositories {
34 | google()
35 | mavenCentral()
36 | }
37 | }
38 |
39 | task clean(type: Delete) {
40 | delete rootProject.buildDir
41 | }
42 |
--------------------------------------------------------------------------------
/widget/starter/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/android/app-actions-samples/fea0f48a6d7f1c43d47c3ad14bfd11ace4b5629c/widget/starter/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/widget/starter/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright 2019 Google LLC
3 | #
4 | # Licensed under the Apache License, Version 2.0 (the "License");
5 | # you may not use this file except in compliance with the License.
6 | # You may obtain a copy of the License at
7 | #
8 | # https://www.apache.org/licenses/LICENSE-2.0
9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | #
16 | #
17 | distributionBase=GRADLE_USER_HOME
18 | distributionPath=wrapper/dists
19 | zipStoreBase=GRADLE_USER_HOME
20 | zipStorePath=wrapper/dists
21 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
22 |
--------------------------------------------------------------------------------
/widget/starter/settings.gradle:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Google LLC
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | */
17 |
18 | include ':app'
19 |
--------------------------------------------------------------------------------