Code Monkey home page Code Monkey logo

ane-idfa's Introduction

built by distriqt //

This extension is provided for free. If it helps you please consider sponsoring the developers to continue support and development of the extension:

❤️ Sponsor

IDFA

The IDFA extension gives you simple access to the advertising identifiers on Android and iOS.

Features

  • Access the identifier for advertising on iOS;
  • Access the advertising Id on Android;
  • Request authorisation using the App Tracking Transparency framework on iOS;
  • Single API interface - your code works across supported platforms with no modifications
  • Sample project code and ASDocs reference

Documentation

The documentation site forms the best source of detailed documentation for the extension along with the asdocs.

Example:

IDFA.service.addEventListener( IDFAEvent.COMPLETE, idfaCompleteHandler );

IDFA.service.requestAuthorisation(
        function ( status:String ):void 
        {
            if (status == TrackingAuthorisationStatus.AUTHORISED)
            {
                IDFA.service.getIDFA();
            }
        }
);

function idfaCompleteHandler( event:IDFAEvent ):void
{
    trace( "identifier: " + event.identifier );
    trace( "isLimitAdTrackingEnabled: " + event.isLimitAdTrackingEnabled );
}

ane-idfa's People

Contributors

marchbold avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

rontian

ane-idfa's Issues

It don't work on IOS 16.5

If you are reporting a bug please make sure you fill out the following information, otherwise delete this template and ask your question.

Expected behaviour
Actual behaviour
Environment
  • AIR SDK 50.2.2.5:
  • Device 12 proMax:
  • Device version: 16.5
  • Development IDE:
  • Development OS:
Logs

Device logs if relevant

How to localize

I want to use this ANE for iOS14 but there is a problem. Is there a way to support NSUserTrackingUsageDescription in multiple languages?

Please update the IDFA library

The com.distriqt.Core library that ANE-IDFA depends on is outdated, so I would like you to update it.

Environment
AIR SDK version: 33.1.1.935

Device OS: iOS 16.2

Device version: iPhone 14 Plus

Development IDE: IntelliJ IDEA 2022.3.1 (Ultimate Edition)

Development OS: macOS 13.1

Logs

CONFLICT :: fatal error : found [1] conflicting packages
CONFLICT :: com.distriqt.Core
CONFLICT :: ├── 7.0.1 required by: [email protected]
CONFLICT :: └── 6.4.8 required by: [email protected]

It always returns Authorized without showing a popup

So I am trying to implement this in one of my apps, as I was asked by apple to have the App Tracking Transparency. ANE seems to be implemented as should but I never get the popup asking for permissions. Furthermore, it always returns "Authorized" on my testing device.

Expected behaviour

Should so popup and let the user decided if they want to consent or not.

Actual behaviour

No popup, always returns "Authorized"

Environment
  • AIR SDK version: 33.1.1.533
  • Device OS: iOS 12.5.x
  • Device version: iPad Mini 2 and Apple's Review device
  • Development IDE: Intellij
  • Development OS: Windows 10

for iOS 15.0.1 IDFA ane is not working

for iOS 15.0.1 IDFA ane is not working, so app update is rejected by apple. by giving following info. IDFA ane was working fine for lower iOS version. but when i updated my iphone to 15.0.1, it is not showing popup for user consent.

Oct 7, 2021 at 7:20 PM
From Apple
2. 1 Performance: App Completeness
Hello,

Thank you for your message.

It would be appropriate to refer to the available documentation to confirm App Tracking Transparency has been correctly implemented.

In particular, review the specifications for the requestTrackingAuthorization(completionHandler:) type method, make any necessary adjustments, and test your app on a device running iOS 15.

You may also ask a question on the Apple Developer Forums to consult with fellow developers and Apple engineers.

If you need code-level support, your questions would be best addressed by Apple Developer Technical Support who can provide discrete code-level assistance for Apple frameworks, APIs, and tools. You may contact them directly by filing a Technical Support Incident.

We look forward to reviewing your app once the appropriate changes have been made.

Best regards,

App Store Review

ld: unexpected token: !tapi-tbd for architecture arm64 Compilation failed while executing : ld64

Hello, I'm getting the error ld: unexpected token: !tapi-tbd for architecture arm64 Compilation failed while executing : ld64 when I compile my game after adding iOS SDK to my IDE.
I read through the adding iOS SDK's tutorial provided by Distriqt and simply downloaded the SDK your provided.
The thing is that if I remove the iOS SDK, I don't have any issues to compile my game and IDFA ANE works as well, but I still wish to include iOS SDK in as it may get required for your rest ANEs.

Environment
  • AIR SDK version: AIR 33.1.1.575
  • Device OS: ios 14
  • Device version: iphoneX
  • Development IDE: flash builder 4.7
  • Development OS: windows 7

[iOS 17.4] requestAuthorisation callback is called at unexpected times

The callback is executed immediately after requesting to display the ATT dialog, and the result is that denied has been selected.
This behavior was the same whether I used the requestAuthorisation() callback or IDFAAuthorisationEvent.CHANGED.

If you select permission in the ATT dialog, the permission will be reflected the next time you start the app.

Can you reproduce this behavior?
And can we take measures?

Expected behaviour

The requestAuthorisation() callback is called after the ATT dialog is closed.

Actual behaviour

The requestAuthorisation() callback is called before making a selection in the ATT dialog.

Environment
  • AIR SDK version: 50.2.4.4
  • Device OS: iOS 17.4 / iPad OS 17.4.1
  • Device version: iPhone XS Max / iPad Pro
  • Development IDE: IntelliJ IDEA
  • Development OS: macOS Sonoma 14.1.1
Logs
-------------------------------------------------------
[OK] iPhone 14 Pro / iOS: 17.3.1 / IDFA.VERSION: 5.2.0
-------------------------------------------------------

デフォルト	12:17:33.208703+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	12:17:33.208884+0900	air	IDFA.service.authorisationStatus(): not_determined
デフォルト	12:17:35.910980+0900	air	[MyIDFA] requestAuthorisation()
デフォルト	12:17:35.911051+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	12:17:35.911863+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation
デフォルト	12:17:35.912213+0900	air	onDeactivate()  <---------------------- The app loses focus.
デフォルト	12:17:47.869080+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation: complete: authorised
デフォルト	12:17:47.869168+0900	air	[MyIDFA] requestAuthorisationCallback() @ authStatus: authorised
デフォルト	12:17:47.869302+0900	air	com.distriqt.IDFA::DTIDFAController::getIDFA
デフォルト	12:17:48.071330+0900	air	[MyIDFA] getIDFA() @ IDFA: xxxxx-xxxxx-xxxxx
デフォルト	12:17:48.391632+0900	air	onActivate()  <------------------------ The focus returned to the app.

-------------------------------------------------------
[OK] iPad Air / iOS: 15.7.5 / IDFA.VERSION: 5.2.0
-------------------------------------------------------

デフォルト	12:01:58.214054+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	12:01:58.214304+0900	air	IDFA.service.authorisationStatus(): not_determined
デフォルト	12:02:01.383404+0900	air	[MyIDFA] requestAuthorisation()
デフォルト	12:02:01.384114+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	12:02:01.387033+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation
デフォルト	12:02:01.548553+0900	air	onDeactivate()  <---------------------- The app loses focus.
デフォルト	12:02:09.110682+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation: complete: authorised
デフォルト	12:02:09.110774+0900	air	[MyIDFA] requestAuthorisationCallback() @ authStatus: authorised
デフォルト	12:02:09.110867+0900	air	com.distriqt.IDFA::DTIDFAController::getIDFA
デフォルト	12:02:09.221075+0900	air	[MyIDFA] getIDFA() @ IDFA: xxxxx-xxxxx-xxxxx
デフォルト	12:02:09.426435+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	12:02:09.996598+0900	air	onActivate()  <------------------------ The focus returned to the app.

-------------------------------------------------------
[NG] iPhone XS Max / iOS: 17.4 / IDFA.VERSION: 5.2.0
-------------------------------------------------------

デフォルト	11:43:54.797554+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	11:43:54.798234+0900	air	IDFA.service.authorisationStatus(): not_determined
デフォルト	11:43:58.944535+0900	air	[MyIDFA] requestAuthorisation()
デフォルト	11:43:58.944633+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	11:43:58.945769+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation
デフォルト	11:43:58.952184+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation: complete: denied
デフォルト	11:43:58.956728+0900	air	[MyIDFA] requestAuthorisationCallback() @ authStatus: denied
デフォルト	11:43:58.957341+0900	air	com.distriqt.IDFA::DTIDFAController::getIDFA
デフォルト	11:43:59.077538+0900	air	onDeactivate()  <---------------------- The app loses focus.
デフォルト	11:43:59.113437+0900	air	[MyIDFA] getIDFA() @ IDFA: 00000000-0000-0000-0000-000000000000
デフォルト	11:43:59.147075+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
                                        :
デフォルト	11:44:10.418488+0900	air	onActivate()  <------------------------ The focus returned to the app.

-------------------------------------------------------
[NG] iPad Pro / iOS: 17.4.1 / IDFA.VERSION: 5.2.0
-------------------------------------------------------

デフォルト	14:02:22.090348+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	14:02:22.090517+0900	air	IDFA.service.authorisationStatus(): not_determined
デフォルト	14:02:38.467327+0900	air	[MyIDFA] requestAuthorisation()
デフォルト	14:02:38.467428+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
デフォルト	14:02:38.468619+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation
デフォルト	14:02:38.470292+0900	air	com.distriqt.IDFA::DTIDFAController::requestAuthorisation: complete: denied
デフォルト	14:02:38.475605+0900	air	[MyIDFA] requestAuthorisationCallback() @ authStatus: denied
デフォルト	14:02:38.475800+0900	air	com.distriqt.IDFA::DTIDFAController::getIDFA
デフォルト	14:02:38.570508+0900	air	onDeactivate()  <---------------------- The app loses focus.
デフォルト	14:02:38.596266+0900	air	[MyIDFA] getIDFA() @ IDFA: 00000000-0000-0000-0000-000000000000
デフォルト	14:02:38.631200+0900	air	com.distriqt.IDFA::DTIDFAController::authorisationStatus
                                        :
デフォルト	14:02:45.643732+0900	air	onActivate()  <------------------------ The focus returned to the app.

isLimitAdTrackingEnabled is always true on IOS

If you are reporting a bug please make sure you fill out the following information, otherwise delete this template and ask your question.

Expected behaviour

isLimitAdTrackingEnabled should return false when permission is allowed either at the beginning of the app or from the settings page.

Actual behaviour

isLimitAdTrackingEnabled is always returning true on IOS regardless of permission being allowed or not.

Environment
  • AIR SDK version: 50.2.1
  • Device OS: IOS
  • Device version: 16.5.1
  • Development IDE: Flash Develop
  • Development OS: Windows
Logs

Device logs if relevant

IDFA Android 64bit support

Update the extension to include support for Android 64bit

Starting August 1, 2019, your apps published on Google Play will need to support 64-bit architectures. 64-bit CPUs deliver faster, richer experiences for your users. Adding a 64-bit version of your app provides performance improvements, makes way for future innovation, and sets you up for devices with 64-bit-only hardware.

App Store "Invalid architectures" issue

When I tried to upload release build to app store, this error occurred "Invalid architectures - This app has invalid architecture, and may have been built with invalid build settings or incompatible tools".
Please fix this ASAP.

  • IPHONE OS SDK version: 12.1
  • AIR SDK version: 32.0.0.103
  • Device OS: Mojave 10.14.3
  • Device version:
  • Development IDE: Intellij IDEA
  • Development OS: IOS

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.