aws-amplify / aws-amplify/amplify-android
Analytics - Data mismatch between CustomProperties and Pinpoint Attributes
- Dominant language
- Java
- Stars
- 287
- Forks
- 132
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 45
Description
### Before opening, please confirm:
- [X] I have [searched for duplicate or closed issues](https://github.com/aws-amplify/amplify-android/issues?q=is%3Aissue+) and [discussions](https://github.com/aws-amplify/amplify-android/discussions).
### Language and Async Model
Not applicable
### Amplify Categories
Analytics, Notifications
### Gradle script dependencies
```groovy
// Put output below this line
```
### Environment information
```
# Put output below this line
```
### Please include any relevant guides or documentation you're referencing
_No response_
### Describe the feature request
We need to allow the update of user attributes to accept an array of values, similar to what is mentioned in this Github issue https://github.com/aws-amplify/amplify-flutter/issues/2850
### Initialization steps (if applicable)
_No response_
### Code Snippet
```java
// Put your code below this line.
```
### amplifyconfiguration.json
_No response_
### GraphQL Schema
```graphql
// Put your schema below this line
```
### Additional information and screenshots
Proposal:
Allow the Pinpoint Endpoint attributes field to be set as a Map in UserProfile by:
- Removing the UserProfile.customProperties field
- Adding UserProfile.attributes of type Map
- Adding UserProfile.metrics of type Map
Contributor guide
Research direction
Start by locating the Java UserProfile model and the Pinpoint Endpoint attributes integration in the Analytics and Notifications categories. Review how customProperties is currently represented and propagated, then determine the API and compatibility implications of replacing it with attributes as Map and adding metrics as Map. Done means user attribute arrays are accepted and the proposed Pinpoint representation is consistent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, aws, java
- Domain
- analytics, mobile
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100