Status Update
Comments
da...@google.com <da...@google.com> #2
Can someone please provide an example of Notification.BigPictureStyle().bigPicture(...)
working with an animated image? From the description of this issue and the API 31 requirement, I am assuming an Icon must be passed to .bigPicture()
. However, what configurations does the Icon need in order to animate?
I have scoured the internet, but am unable to find a single example of this even though Google boldly announced it in
Edit: Also requested
sp...@gmail.com <sp...@gmail.com> #3
Branch: androidx-main
commit a2b7f7b7268c8f24b6e3a66bf58017f39c329b68
Author: Alexander Roederer <aroederer@google.com>
Date: Thu Jun 16 17:45:43 2022
Adds support for BigPictureStyle using Icon
Modifies Notification.java to use Icon as the base representation
for BigPicture in BigPictureStyle. Also adds tests to ensure both
Icon and Bitmap representation are functional.
Bug: 215583339
Test: NotificationCompatTest integration tests added
Relnote: Adds support for BigPictureStyle using Icon
Change-Id: Ice26d1400836cdf74af931f0f8ca59c25dd9c3c3
M core/core/api/restricted_current.txt
M core/core/src/main/java/androidx/core/app/NotificationCompat.java
M core/core/api/public_plus_experimental_current.txt
M core/core/src/androidTest/java/androidx/core/app/NotificationCompatTest.java
M core/core/api/current.txt
sp...@gmail.com <sp...@gmail.com> #4
Flag flipped in
sp...@gmail.com <sp...@gmail.com> #5
<fragment
android:id="@+id/sentence_container"
android:name="com.sealstudios.simpleaac.ui.aac.SentenceFragment"
android:layout_width="match_parent"
android:layout_height="@dimen/card_sentence_holder_height"
app:fragment_layout_identifier="@string/main"
app:layout_constraintTop_toTopOf="parent" />
sp...@gmail.com <sp...@gmail.com> #6
da...@google.com <da...@google.com> #7
Is that ViewModel in another Gradle module? Make sure you apply the androidx.hilt-compiler
too all the those modules where you have your @InjectViewModel
. Do you notice any other difference of that SentencesViewModel? If you can share an app that reproduces the issue that would be great.
sp...@gmail.com <sp...@gmail.com> #8
private final SentenceRepository sentenceRepository;
private final GroupRepository groupRepository;
@ViewModelInject
SentencesViewModel(SentenceRepository sentenceRepository, GroupRepository groupRepository, @Clicks int clicks, @SentenceTypeAndDescription String[] cardArgs){
this.sentenceRepository = sentenceRepository;
this.groupRepository = groupRepository;
}
the view model is built by a component
@Component(dependencies = SentenceViewModelDependencies.class)
public interface SentenceViewModelComponent {
void inject(CardHolderFragment cardHolderFragment);
@Component.Builder
interface Builder {
Builder context(@BindsInstance Context context);
Builder appDependencies(SentenceViewModelDependencies sentenceViewModelDependencies);
SentenceViewModelComponent build();
}
}
the component needs
@EntryPoint
@InstallIn(ApplicationComponent.class)
public interface SentenceViewModelDependencies {
@SentenceTypeAndDescription String[] sentenceTypeAndDescription();
}
and the view model needs
@Module
@InstallIn(ApplicationComponent.class)
public class SentenceClicksModule {
@Singleton
@Provides
@Clicks
public int provideSentenceClicks() {
return 5;
}
}
@Module
@InstallIn(ApplicationComponent.class)
public class SentenceRepositoryModule {
@Singleton
@Provides
public SentenceRepository provideSentenceRepository(@ApplicationContext Context context, DbHelper dbHelper) {
return new SentenceRepository(context, dbHelper);
}
}
@Module
@InstallIn(ApplicationComponent.class)
public class GroupRepositoryModule {
@Singleton
@Provides
public GroupRepository provideGroupRepository(DbHelper dbHelper) {
return new GroupRepository(dbHelper);
}
}
it was working before without any dependency injection
da...@google.com <da...@google.com> #9
Is SentenceFragment
annotated with @AndroidEntryPoint
? It looks like you have setup injection of it yourself vs letting Hilt inject it.
sp...@gmail.com <sp...@gmail.com> #10
ap...@google.com <ap...@google.com> #11
Branch: androidx-master-dev
commit 00068c24a9e483cc7a8f930e546a67b841c70382
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Mon Aug 10 11:45:49 2020
Apply hilt-android-compiler to AndroidX's Hilt-common
The aggregating compiler has to be applied to the project
where the extension annotations are annotated with
@GeneratesRootInput so the aggregating data is generated
and therefore Hilt can correctly await for these to be
processed.
Relnote: "Fix an issue where AndroidX Hilt extension Modules would not get correctly picked up by Hilt causing ViewModels or Workers to not be available for creation."
Bug: 159540434
Test: Existing tests pass.
Change-Id: I3181c8aad0973d15d82661b48404f2eeeb7ef954
M hilt/hilt-common/build.gradle
da...@google.com <da...@google.com> #12
Sorry took a while since it was a bit hard to track. The next alpha version should contain contain a fix for this.
Description
Version used: com.google.dagger:hilt-android:2.28-alpha
Devices/Android versions reproduced on: nexus 5x emulator, android 9.0
If this is a bug in the library, we would appreciate if you could attach:
- Sample project to trigger the issue.
- A screenrecord or screenshots showing the issue (if UI related).
When creating a view model using the navigation scope i get an error stating that ViewModel has no zero argument constructor.
userViewModel = new ViewModelProvider(requireActivity()).get(UserViewModel.class); // works
userViewModel = new ViewModelProvider(getStoreOwner()).get(UserViewModel.class); // crashes
private ViewModelStoreOwner getStoreOwner() {
NavController navController = Navigation
.findNavController(requireActivity(), R.id.root_navigator_fragment);
if (layoutIdentifier.equals(Constants.MAIN_IDENTIFIER)) {
return navController.getViewModelStoreOwner(R.id.root_navigator);
} else {
return navController.getViewModelStoreOwner(R.id.MessageGraph);
}
}