Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Staging -> Main v1.1.0 Release #72

Merged
merged 120 commits into from
Jun 8, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
2aab02c
Setup project (#1)
kevinlind Jan 30, 2021
554e235
[AMSDK-11119] - Rename to IdentityEdge, Move to identity package + ad…
PravinPK Feb 26, 2021
d9a2499
Add functional testing to CI (#3)
kevinlind Mar 2, 2021
0caa25d
[AMSDK-11019] ECID handling in Identity Edge (#4)
nporter-adbe Mar 6, 2021
61fae43
[AMSDK-11079] Add getEcid API (#5)
nporter-adbe Mar 10, 2021
904c056
[AMSDK-11127] Reset Identities API (#6)
nporter-adbe Mar 11, 2021
8ffe573
[AMSDK-11081] - Update Identities public API (#7)
PravinPK Mar 12, 2021
7eefc91
Add IdentityItem to IdentityMap (#8)
nporter-adbe Mar 12, 2021
8f09478
[AMSDK-11082] Get identities API (#11)
nporter-adbe Mar 15, 2021
15be7ab
[Dev] - Introducing the Goodness of Functional test helpers + First f…
PravinPK Mar 17, 2021
13bf5a0
Migrate ECID from direct Identity extension (#13)
kevinlind Mar 18, 2021
d182039
[AMSDK-11210] Remove reset identities API (#12)
nporter-adbe Mar 18, 2021
37fb286
Add unit test to verify secondary Ecid is not set if primary is not s…
kevinlind Mar 19, 2021
486e26a
[AMSDK-11081] - Part 2 Implementation of Update/Remove Identity API (…
PravinPK Mar 19, 2021
41c9eab
[Dev] - AuthenticationState Renaming and Remove ECID variable (#16)
PravinPK Mar 22, 2021
3f4089a
[AMSDK-11140] Renaming to edgeidentity (#17)
emdobrin Mar 22, 2021
63d5161
Don't dispatch reset complete on boot/update/remove (#18)
nporter-adbe Mar 23, 2021
15679d7
[AMSDK-11312] - Handle boot event + Bugfixes (#19)
PravinPK Mar 25, 2021
7184829
Add sample app (#20)
kevinlind Mar 25, 2021
5614625
Print AuthenticatedState string when calling IdentityItem.toString (#22)
kevinlind Mar 26, 2021
93f8460
[AMSDK-11329] - Functional tests on Edge Identity (#21)
PravinPK Mar 29, 2021
84d15b6
[Dev] : 🧼 Clean up - log, sonar Lint + remove unwanted methods (#24)
PravinPK Mar 29, 2021
6521451
Add contributing guide and templates (#28)
emdobrin Mar 30, 2021
471e066
Update build scripts for publishing directly to Sonatype (#25)
kevinlind Mar 30, 2021
6797259
Set version to 1.0.0
emdobrin Mar 30, 2021
e532a68
Create maven-snapshot.yml (#26)
kevinlind Mar 30, 2021
3695a29
Create maven-release.yml (#27)
kevinlind Mar 30, 2021
4275a2a
Merge pull request #29 from emdobrin/dev
emdobrin Mar 30, 2021
103b34e
Update core dependency to 1.8.0 (#30)
emdobrin Mar 30, 2021
be5e5b5
Run astyle to correct formatting (#31)
kevinlind Mar 31, 2021
16e9ed2
Update failing tests (#34)
kevinlind Mar 31, 2021
b626862
Run 'lint' before assembling build (#35)
kevinlind Mar 31, 2021
543c1d4
Use Java 8 as it is required for Gradle (#33)
kevinlind Mar 31, 2021
d2a3c14
Use Java 8 as it is required to run Gradle (#32)
kevinlind Mar 31, 2021
e994d04
Use GPG_KEY_ID secret in script (#38)
kevinlind Apr 1, 2021
34bd332
Use GPG_KEY_ID secret in script (#37)
kevinlind Apr 1, 2021
efa0aa4
minor public doc changes
kevinlind Apr 5, 2021
1ade93d
fix typos
kevinlind Apr 5, 2021
2f05f29
Merge pull request #39 from kevinlind/minor-doc
emdobrin Apr 8, 2021
83dc793
Set mock network service for functional tests (#41)
emdobrin Apr 8, 2021
18c9cb5
Read ECID from IdentityDirect on Boot when registered (#40)
emdobrin Apr 8, 2021
f360043
Update core version 1.8.0 (#42)
emdobrin Apr 8, 2021
af5d16a
Fetch identity shared state when needed (#44)
emdobrin Apr 8, 2021
618fcec
Merge branch 'main' of github.com:adobe/aepsdk-edgeidentity-android i…
PravinPK Apr 9, 2021
ae3491b
Merge pull request #46 from PravinPK/dev
kevinlind Apr 21, 2021
2136f31
Add CodeCov upload step for unit and functional tests (#47)
kevinlind Apr 22, 2021
0076ec8
Fix broken link in README (#48)
kevinlind May 4, 2021
3c9f7c6
Include code format tools (#49)
kevinlind Jun 4, 2021
9bf6486
[MOB-15718] Updates the parsing of invalid identityMap (#52)
emdobrin Feb 10, 2022
f322afd
Feature implementation for supporting advertising identifier
timkimadobe Mar 4, 2022
7182071
base implmementation for android ad id
timkimadobe Mar 9, 2022
ff464f5
Code cleanup, implementing feedback from PR
timkimadobe Mar 14, 2022
2781306
Test cases for IdentityState (with consent, without consent, no change)
timkimadobe Mar 14, 2022
1859581
Add tests for request content listener
timkimadobe Mar 16, 2022
6bd8331
Updating javadocs
timkimadobe Mar 16, 2022
5fdc1a9
Update code formatting
timkimadobe Mar 16, 2022
c7971c0
Add javadocs for isAdIDEvent
timkimadobe Mar 16, 2022
3b43391
Remove code note comments in extension tests
timkimadobe Mar 16, 2022
5843a4d
Remove identityProperties param from updateAdvertisingIdentifier method
timkimadobe Mar 16, 2022
5485166
Merge branch 'feature-ad-id' into feature-ad-id-testing
timkimadobe Mar 16, 2022
14ac3b4
Update tests to use new signature for updateAdvertisingIdentifier
timkimadobe Mar 16, 2022
9f3e12d
Remove IdentityAdIdTests file
timkimadobe Mar 16, 2022
6bc5226
Move private methods below protected ones
timkimadobe Mar 16, 2022
b8c0bda
Update javadocs for updateAdvertisingIdentifier for additional detail…
timkimadobe Mar 16, 2022
1de27c7
Merge branch 'feature-ad-id' into feature-ad-id-testing
timkimadobe Mar 16, 2022
7dd0604
Update code formatting
timkimadobe Mar 16, 2022
794958a
Update log statement for attempting to modify reserved ad ID namespac…
timkimadobe Mar 17, 2022
9fd4b61
Revert gradle upgrade
timkimadobe Mar 18, 2022
46e601c
Update quote style
timkimadobe Mar 18, 2022
299b266
Revert gradle wrapper properties upgrade
timkimadobe Mar 18, 2022
2cdcf78
Update updateAdvertisingIdentifier param documentation
timkimadobe Mar 18, 2022
734b381
Merge pull request #53 from timkimadobe/feature-ad-id
timkimadobe Mar 18, 2022
f2ae0b5
Test cases for IdentityState (with consent, without consent, no change)
timkimadobe Mar 14, 2022
d410403
Rebase testing branch to ad ID feature branch
timkimadobe Mar 18, 2022
89659ff
Updating javadocs
timkimadobe Mar 16, 2022
026a8bf
Update tests to use new signature for updateAdvertisingIdentifier
timkimadobe Mar 16, 2022
9759f2f
Merge branch 'feature-ad-id-testing' of https://github.com/timkimadob…
timkimadobe Mar 18, 2022
582b335
Removing outdated comment
timkimadobe Mar 18, 2022
e2fe056
Update javadoc style to use proper format
timkimadobe Mar 18, 2022
86df525
Update try/catch for getAdId to be variable only
timkimadobe Mar 18, 2022
cce1f86
Update test_handleRequestContent_processesWhenBooted case to verify c…
timkimadobe Mar 18, 2022
cc35bc0
Remove unneeded commented mock
timkimadobe Mar 18, 2022
dcd23ab
Extract repetitive flat identity map verification into test helper fu…
timkimadobe Mar 19, 2022
18afe28
Add log message for ClassCastException in getAdId helper method
timkimadobe Mar 21, 2022
b6b2f10
Move private helper functions to bottom of file
timkimadobe Mar 21, 2022
076a10a
Update test case to cover the valid -> null case
timkimadobe Mar 22, 2022
f9a21b6
Update Update XDM ad ID test cases to check against actual stored ad …
timkimadobe Mar 22, 2022
d901238
Update EventUtilsTests to include new test case for unexpected types …
timkimadobe Mar 22, 2022
75a4582
Update test helper access level to private in IdentityStateTests
timkimadobe Mar 22, 2022
3c3bf4d
Update IdentityStateTests to use consolidated helper class and update…
timkimadobe Mar 22, 2022
c8ae966
Refactor helper signature for verifyFlatIdentityMap to align with oth…
timkimadobe Apr 8, 2022
297be4e
Functional test cases for ad ID implementation
timkimadobe Apr 11, 2022
440ef0e
Add functional test case for sending all zeros ad ID twice
timkimadobe Apr 11, 2022
33adc38
Add test cases for non-ad ID generic identity + request content event
timkimadobe Apr 11, 2022
d07ca21
Update test case description
timkimadobe Apr 11, 2022
e017ad4
Remove duplicate test case
timkimadobe Apr 12, 2022
8f79711
Merge pull request #56 from timkimadobe/feature-ad-id-testing
timkimadobe Apr 12, 2022
119b32c
Test App Update for Ad ID Edge Identity Features (#57)
timkimadobe May 6, 2022
843f5d8
Update Readme for demo app setup steps (#60)
cacheung May 6, 2022
f260058
[MOB-15817] Add getUrlVariables public API (#59)
addb May 13, 2022
6932a2d
[MOB-15818] Added documentation directory with getting started guide …
addb May 18, 2022
2b7b775
Update Edge build for feature testing (#62)
emdobrin May 23, 2022
4e869a4
New Documentation directory for detailed documentation (#58)
timkimadobe Jun 1, 2022
2102d38
Update env file ID var name and help text for consistency with other …
timkimadobe Jun 2, 2022
ddd4ede
Update variable name
timkimadobe Jun 2, 2022
13b7a89
Merge pull request #63 from adobe/feature/adIdConsent
emdobrin Jun 2, 2022
0d9237d
Documentation update: setAdvertisingIdentifier API reference (#65)
timkimadobe Jun 7, 2022
2d55d12
Merge branch 'dev' into feature/adIdConsent
emdobrin Jun 7, 2022
2395701
Resolved merge conflicts with dev for adId changes
addb Jun 7, 2022
cba2707
Merge pull request #66 from adobe/feature/adIdConsent
emdobrin Jun 7, 2022
642ddd3
Resolved merge conflicts with dev for adId doc changes
addb Jun 7, 2022
ae66b88
Minor changes to setAdvertisingIdentifier API reference documentation
addb Jun 7, 2022
9e2413e
Documentation format fixes
addb Jun 7, 2022
f4fd51e
Merge pull request #67 from addb/feature/getUrlVariables
emdobrin Jun 7, 2022
e16ef35
Bump version to 1.1.0
addb Jun 7, 2022
0e6a09a
Merge pull request #68 from adobe/feature/getUrlVariables
emdobrin Jun 7, 2022
d1b9b6a
Merge branch 'dev' into dev
emdobrin Jun 7, 2022
5420ecc
Merge pull request #69 from addb/dev
emdobrin Jun 7, 2022
78b129f
Update Android test app to use ad ID feature comment blocks (#71)
timkimadobe Jun 7, 2022
92d38af
Merge pull request #70 from adobe/dev
addb Jun 7, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 57 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,37 @@ workflows:
version: 2
build-test-deploy:
jobs:
- build-and-unit-test
- functional-test
- validate-code
- build-and-unit-test:
requires:
- validate-code
- functional-test:
requires:
- validate-code

jobs:
validate-code:
working_directory: ~/code
docker:
- image: circleci/android:api-29-node
environment:
JVM_OPTS: -Xmx3200m
steps:
- checkout

- run:
name: Check Code Format
command: make format-check

build-and-unit-test:
working_directory: ~/code
docker:
- image: circleci/android:api-29
- image: circleci/android:api-29-node
environment:
JVM_OPTS: -Xmx3200m
steps:
- checkout

- run:
name: Javadoc
command: make ci-javadoc
Expand All @@ -36,8 +55,26 @@ jobs:
- run:
name: UnitTests
command: make ci-unit-test

# code coverage
- run:
name: Upload Code Coverage Report
command: |
curl -s https://codecov.io/bash > codecov;
VERSION=$(grep 'VERSION=\"[0-9\.]*\"' codecov | cut -d'"' -f2);
SHAVERSION=$(shasum -v);
echo "Using CodeCov version '$VERSION'"
echo "Using shasum '$SHAVERSION'"
for i in 1 256 512
do
shasum -a $i -c --ignore-missing <(curl -s "https://raw.githubusercontent.com/codecov/codecov-bash/${VERSION}/SHA${i}SUM") ||
shasum -a $i -c <(curl -s "https://raw.githubusercontent.com/codecov/codecov-bash/${VERSION}/SHA${i}SUM" | grep -w "codecov")
done
bash ./codecov -v -X s3 -c -D "./ci/unit-test/build/reports" -F unit-tests

- store_artifacts:
path: ci/unit-test/build/reports

- store_test_results:
path: ci/unit-test/build/test-results

Expand All @@ -55,8 +92,25 @@ jobs:
# The test command
test-command: make ci-functional-test

# code coverage
- run:
name: Upload Code Coverage Report
command: |
curl -s https://codecov.io/bash > codecov;
VERSION=$(grep 'VERSION=\"[0-9\.]*\"' codecov | cut -d'"' -f2);
SHAVERSION=$(shasum -v);
echo "Using CodeCov version '$VERSION'"
echo "Using shasum '$SHAVERSION'"
for i in 1 256 512
do
shasum -a $i -c --ignore-missing <(curl -s "https://raw.githubusercontent.com/codecov/codecov-bash/${VERSION}/SHA${i}SUM") ||
shasum -a $i -c <(curl -s "https://raw.githubusercontent.com/codecov/codecov-bash/${VERSION}/SHA${i}SUM" | grep -w "codecov")
done
bash ./codecov -v -X s3 -c -D "./ci/functional-test/build/reports" -F functional-tests

- store_artifacts:
path: ci/functional-test/build/reports

- store_test_results:
path: ci/functional-test/build/outputs/androidTest-results

Expand Down
5 changes: 5 additions & 0 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash

make format
git diff --cached --name-only --diff-filter=d | while read filename; do git add "$filename"; done

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,6 @@ ci/
# IntelliJ
*.iml
**/.idea/

# Secrets
**/*/values/secrets.xml
53 changes: 53 additions & 0 deletions Documentation/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Advertising identifier

## Configuration
To enable advertising identifier features in the sample app, follow these steps:
1. Update the value for key `gms_ads_app_id` located in the `secrets.xml` at [aepsdk-edgeidentity-android/code/app/src/main/res/values](../code/app/src/main/res/values/secrets.xml) with a valid Google AdMob app ID.
- See Google's [quick start reference](https://developers.google.com/admob/android/quick-start) on how to get your AdMob app ID. See step 3 of the [Configure your app](https://developers.google.com/admob/android/quick-start#import_the_mobile_ads_sdk) section for a free public test app ID from Google.
- Any real key values in the `secrets.xml` file should **not** be committed to the repository.
2. By default, the ad ID features are commented out in the sample app. To enable these features, uncomment the implemention code using [find and replace all](https://www.jetbrains.com/help/idea/finding-and-replacing-text-in-project.html#replace_search_string_in_project) to replace all instances of:
```java
/* Ad ID implementation
```
with:
```java
//* Ad ID implementation
```
Each code block has a pair of block comments wrapped around it to enable this behavior:
```java
/* Ad ID implementation (pt. 1/4)
<commented implementation code...>
/* Ad ID implementation (pt. 1/4) */
```

After replacement it will become:
```java
//* Ad ID implementation (pt. 1/4)
<active implementation code!>
//* Ad ID implementation (pt. 1/4) */
```

For convenience, these are the default find and replace shortcuts in Android Studio:
[<img src="./assets/find-and-replace-shortcuts.png" alt="Default shortcuts for find and replace" width="500"/>](./assets/find-and-replace-shortcuts.png)

The shortcut should open a window that looks like the following:
[<img src="./assets/find-and-replace-all-example.png" alt="Example of find and replace" width="500"/>](./assets/find-and-replace-all-example.png)
There should be 5 pairs of special comment blocks (10 total matches) across two files:
`app/build.gradle`, `CustomIdentityFragment.kt`, and `SharedViewModel.kt`

3. With the implementation code and gradle files uncommented with new dependencies, sync the project with the Gradle file changes using: File -> Sync Project with Gradle Files

[<img src="./assets/sync-project-gradle-example.png" alt="Example of find and replace" width="500"/>](./assets/sync-project-gradle-example.png)

The app should now be properly configured to use advertising identifier features.

To **disable** these features, follow these steps:
1. [Find and replace](https://www.jetbrains.com/help/idea/finding-and-replacing-text-in-project.html#replace_search_string_in_project) all instances of:
```java
//* Ad ID implementation
```
with:
```java
/* Ad ID implementation
```
2. Sync Project with Gradle files using: File -> Sync Project with Gradle Files
Loading