Quantcast
Channel: Ionic Forum - Latest topics

How is variables.gradle generated?

$
0
0

Hello,

I currently have this variables.gradle file generated when I perform npx cap add android

ext {
    minSdkVersion = 22
    compileSdkVersion = 33
    targetSdkVersion = 33
    androidxActivityVersion = '1.7.0'
    androidxAppCompatVersion = '1.6.1'
    androidxCoordinatorLayoutVersion = '1.2.0'
    androidxCoreVersion = '1.10.0'
    androidxFragmentVersion = '1.5.6'
    coreSplashScreenVersion = '1.0.0'
    androidxWebkitVersion = '1.6.1'
    junitVersion = '4.13.2'
    androidxJunitVersion = '1.1.5'
    androidxEspressoCoreVersion = '3.5.1'
    cordovaAndroidVersion = '10.1.1'
}

But for example I am using these two capacitor plugins @capacitor/Push-Notifications and @capacitor/Camera in which they have a section variables where it says that it will use these in the variables.gradle:

    firebaseMessagingVersion = '23.3.1'
    androidxExifInterfaceVersion='1.3.6'
    androidxMaterialVersion='1.10.0'

My question is that are these variables supposed to be generated automatically if you’re using the plugin or I need to add it on my own? Or are these variables optional where you defined to select the version you want to use, and if not used, i will use the default?

1 post - 1 participant

Read full topic


@capacitor/inappbrowser crashes app on android

$
0
0

I have extra simple app that consists of one page.
Everything works ok on Web or Android.

When I just install InAppBrowser and try to run it on Android - app opens and instantly closes (real device or emulator - no diff) - even if I’m not use that code and imports for real.
So I do next steps:

  1. Installed capacitor/inappbrowser
  2. build/copy/sync
  3. up minSdkVersion to 26 (requirements)
  4. run app
npm install @capacitor/inappbrowser
npx cap sync

That’s all, build is successful but app not opened anymore.
If I remove inappbrowser depency and make sync & run - all works fine again.

How to find out what’s wrong with that?

P.S.
Gradle vars

    minSdkVersion = 26
    compileSdkVersion = 34
    targetSdkVersion = 34

JDK: openjdk-17
Tested devices: Android 11 (sdk 30)
Capacitor: 6.1.2

1 post - 1 participant

Read full topic

Generate File and send it to Printed by my App

$
0
0

I need to make a simple app that prints small receipts. I need to generate a PDF from my app and then send it to print.

I wanted to ask you some advice:

  • can I implement this use case from an app written in ionic?
  • can I send the file to a mini network printer?
  • do I need the mini printer to support some particular communication protocol?
  • I would like to avoid the classic printer preview page, but have a simple button in the app that starts printing

please give me some advice

L

1 post - 1 participant

Read full topic

Is date-fns@2.30.0 the last version compatible with ionic / angular?

$
0
0

In my app (Ionic 8, Angular 18), when I use a version of date-fns greater than 2.30.0, I get errors like:

Error: [ng] Error: node_modules/date-fns/intlFormatDistance.d.ts:6:16 - error TS2724: ‘Intl’ has no exported member named ‘RelativeTimeFormatOptions’. Did you mean ‘DateTimeFormatOptions’? 6 extends Intl.RelativeTimeFormatOptions,

Should I keep 2.30.0, or do I need to make any changes?

1 post - 1 participant

Read full topic

Ionic navigation is not working

$
0
0

I have nested navigation

Currently I want to go back to entry /ads screen and clear all history and if i click go back its going back to all history

Current Position

/ads/promotion-wizard-main/create-campains/select-platform/add-campaign

Then I tried


this.navCtrl.navigateRoot('/ads', { replaceUrl: true });
this.router.navigate('/ads', {replaceUrl: true})

none of above worked .It will navigate to '/ads' page but if i click back it will go all the way up to this screen

/ads/promotion-wizard-main/create-campains/select-platform/add-campaign

Please help me to resolve It cost me hours.
Thank you,


{
  "name": "Test",
  "version": "0.0.1",
  "author": "Ionic Framework",
  "homepage": "https://ionicframework.com/",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "build:dev": "ng build --configuration=dev",
    "serve:dev": "ng serve --configuration=dev",
    "build:staging": "ng build --configuration=staging",
    "serve:staging": "ng serve --configuration=staging",
    "build:qa": "ng build --configuration=qa",
    "serve:qa": "ng serve --configuration=qa",
    "watch": "ng build --watch --configuration development",
    "test": "ng test",
    "lint": "ng lint"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^17.0.2",
    "@angular/common": "^17.0.2",
    "@angular/compiler": "^17.0.2",
    "@angular/core": "^17.0.2",
    "@angular/forms": "^17.0.2",
    "@angular/platform-browser": "^17.0.2",
    "@angular/platform-browser-dynamic": "^17.0.2",
    "@angular/router": "^17.0.2",
    "@capacitor/android": "^6.0.0",
    "@capacitor/app": "6.0.0",
    "@capacitor/browser": "^6.0.1",
    "@capacitor/core": "6.0.0",
    "@capacitor/haptics": "6.0.0",
    "@capacitor/ios": "^6.0.0",
    "@capacitor/keyboard": "6.0.0",
    "@capacitor/status-bar": "6.0.0",
    "@ionic/angular": "^8.0.0",
    "chart.js": "^4.4.3",
    "chartjs-plugin-datalabels": "^2.2.0",
    "ionicons": "^7.0.0",
    "rxjs": "~7.8.0",
    "swiper": "^11.1.3",
    "zone.js": "~0.14.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^17.0.0",
    "@angular-eslint/builder": "^17.0.0",
    "@angular-eslint/eslint-plugin": "^17.0.0",
    "@angular-eslint/eslint-plugin-template": "^17.0.0",
    "@angular-eslint/schematics": "^17.0.0",
    "@angular-eslint/template-parser": "^17.0.0",
    "@angular/cli": "^17.0.0",
    "@angular/compiler-cli": "^17.0.2",
    "@angular/language-service": "^17.0.2",
    "@capacitor/assets": "^3.0.5",
    "@capacitor/cli": "6.0.0",
    "@ionic/angular-toolkit": "^11.0.1",
    "@types/jasmine": "~5.1.0",
    "@typescript-eslint/eslint-plugin": "^6.0.0",
    "@typescript-eslint/parser": "^6.0.0",
    "eslint": "^8.57.0",
    "eslint-plugin-import": "^2.29.1",
    "eslint-plugin-jsdoc": "^48.2.1",
    "eslint-plugin-prefer-arrow": "1.2.2",
    "jasmine-core": "~5.1.0",
    "jasmine-spec-reporter": "~5.0.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.1.0",
    "tslib": "^2.8.0",
    "typescript": "~5.2.2"
  },
  "description": "An Ionic project"
}

1 post - 1 participant

Read full topic

fitsSystemWindows seems to act the other way around in Android, and correct in GrapheneOs

$
0
0

Hi Capacitor community,

I have

<item name="android:fitsSystemWindows">false</item>

set in my styles.xml in my Ionic/Angular project.

I have exactly the behaviour described in this stackoverflow thread:

  • When fitsSystemWindows is set to false, the Ionic Webview IS NOT behind the system bars
  • When fitsSystemWindows is set to true, the Ionic Webview IS behind the system bars

Question 1: Shouldn`t it be the other way around?

And one more question: One of my users is using GrapheneOs. In this system, my app is behind the system bars, which makes it unusable because the footer bar can`t be clicked.

Question 2: Does anybody have an idea why GrapheneOs acts differently, and how to fix it?

Thank you,

Johannes

1 post - 1 participant

Read full topic

Ionic NGRX Signal Store auth not triggered after relogin

$
0
0

I have an issue with my Angular 18 and Ionic 7 application, which uses NGRX Signal Store. During logout, I’m able to clear the localStorage and set the isAuthenticated and token states to false and undefined, with a redirection to the login page. However, when I try to log back in, although the authentication works correctly and the token is received, the withHooks in the store, which I instantiate in the HomeComponent, no longer triggers. I believe Ionic is keeping the previous page in the DOM. How can I destroy components upon logout?

Ngrx Auth Signal Store :

export const AuthenticationStore = signalStore(
  { providedIn: 'root' },
  withState(initialValue),
  withComputed((store) => ({
    isLogged: computed(() => store.isAuthenticated()),
    isNotLogged: computed(() => !store.token() || !store.isAuthenticated()),
  })),
  withMethods(
    (
      store,
      infra = inject(AuthenticationInfrastructure),
      localInfra = inject(LocalStorageAuthenticationInfrastructure),
      router = inject(Router)
    ) => ({
      localLogin(token: WithToken): void {
        if (token.access_token) {
          patchState(store, {
            isAuthenticated: true,
            token: {
              access_token: token.access_token,
              expires_in: 0,
              refresh_expires_in: 0,
              refresh_token: '',
            },
          });
        }
      },
      logIn: rxMethod<AuthenticateType>(
        pipe(
          tap(() => patchState(store, { isLoading: true })),
          concatMap((input) => {
            return infra.login(input.login, input.password).pipe(
              map((tokenResponse) => {
                return {
                  access_token: tokenResponse.access_token,
                  expires_in: tokenResponse.expires_in,
                  refresh_expires_in: tokenResponse.refresh_expires_in,
                  refresh_token: tokenResponse.refresh_token,
                } as AuthenticationToken;
              }),
              tap((token) =>
                localInfra.startSession({
                  access_token: token.access_token,
                  refresh_token: token.refresh_token,
                })
              ),
              tapResponse({
                next: (token) => {
                  patchState(store, {
                    isLoading: false,
                    isAuthenticated: true,
                    token: token,
                  });
                  const state = getState(store);
                  console.log('Login State', state);
                },
                error: () => {
                  console.log('erreur login');

                  patchState(store, { isLoading: false });
                },
              })
            );
          })
        )
      ),
      logout: () => {
        patchState(store, {
          token: undefined,
          isLoading: false,
          isAuthenticated: false,
        });
        const state = getState(store);

        localInfra.endSession();
        router.navigate(['login'],{ replaceUrl: true });
      },
    })
  ),
  withHooks({
    async onInit(
      store,
      localInfra = inject(LocalStorageAuthenticationInfrastructure),
      router = inject(Router)
    ) {

      const session = await localInfra.getSession();
      if (session.access_token) {
        store.localLogin(session);
      }
      // localInfra.getSession().then((token : WithToken ) => {
      //   if (token) {
      //     console.log(token)
      //     store.localLogin(token);
      //   }
      // });
    },
  })
);

HomeComponent :

export class HomeComponent {
  constructor() {
    addIcons({ personCircle });
  }


  // call to my UserhStore not AuthStore 
  private readonly userApplication = inject(UserApplication);

  customer$$ = this.userApplication.user;

  segmentFilter = new FormControl('abilities');
  
}

redirectToLoginEffect when im authenticate :

export class AuthenticationApplication {
  private readonly store = inject(AuthenticationStore);
  private readonly router = inject(Router);

  private redirectToLoginEffect = effect(() => {
    if (this.store.isLogged()) {
      this.router.navigate(['tabs']);
    }
  });

I tried adding replace: true in the navigate method in my logout, but it doesn’t work.

1 post - 1 participant

Read full topic

How to validate the format of an Ionic Angular template?

$
0
0

HTML5, XML and such have document type definitions (DTD) that allow for these files to be easily validated. Is there a DTD for the Ionic Framework or Ionic Angular specifically that can be used for continuous testing workflows? Is it even possible to create one?

In particular, it would be very helpful to be able to check our existing template files against specific versions of the Ionic Framework so that we can verify that we are not using backward-incompatible components on older versions (as an error). Additionally, it would be very helpful to be able to automatically identify deprecated components (as a warning) so that we can plan a migration to the newer/recommended components.

I’m familiar with the PHP_CodeSniffer approach to these style checks, so I’m really hoping that this exists somewhere for Ionic.

Thank you!

1 post - 1 participant

Read full topic


Add dependency in capacitor plugin

$
0
0

0

I am developing an Ionic Capacitor plugin on the macOS operating system. When I use the command:

npm init @capacitor/plugin plg-download-manager

to create the plugin, only the Sources and Tests folders are created in the ios folder for the plugin, and the Podfile is not generated. This prevents me from adding libraries like Network to the plugin.

/Users/macvps/prj/plg-download-manager-ios

├── CONTRIBUTING.md

├── Package.resolved

├── Package.swift

├── PlgDownloadManagerIos.podspec

├── README.md

├── PlgDownloadManagerIos.podspec

├── android

│ ├── build.gradle

│ ├── gradle

│ ├── gradle.properties

│ ├── gradlew

│ ├── gradlew.bat

│ ├── proguard-rules.pro

│ ├── settings.gradle

│ └── src

├── dist

│ ├── docs.json

│ ├── esm

│ ├── plugin.cjs.js

│ ├── plugin.cjs.js.map

│ ├── plugin.js

│ └── plugin.js.map

├── example-app

│ ├── README.md

│ ├── capacitor.config.json

│ ├── dist

│ ├── ios

│ ├── node_modules

│ ├── package.json

│ ├── src

│ └── vite.config.ts

├── ios

│ ├── Sources

│ └── Tests

├── node_modules

│ .

│ .

│ .

├── package-lock.json

├── package.json

├── rollup.config.js

├── src

│ ├── definitions.ts

│ ├── index.ts

│ └── web.ts

└── tsconfig.json

node version 22.8.0

capacitor version 6.1.2

ionic version 7.2.0

Please help me.

I tried to create Podfile manually but didn’t work

1 post - 1 participant

Read full topic

Ios crached in @capacior/push-notification

Urgent Help customising components

$
0
0

I am finding it challenging to customise simple ionic components (v7). Take the following example snippet. I tried 3 or 4 other approaches before getting to this, so by this point, the code is rushed and ugly. Nonetheless, it still highlights that Ionic styles don’t seem to make any sense.

ion-button {
  // Rounded Corners
  --border-radius: var(--button-radius);

  // Defaults
  display: inline-flex; // Make sure button doesn't take full width by default
  align-items: center;
  justify-content: center;
  text-transform: none !important; // Disable uppercase globally for ion-buttons (need to force it!)
  padding: 0; // Ionic adds 5px padding top & bottom
  margin: 0; // remove outer margin (beyond the border-box)
  box-sizing: border-box !important;

  // Color theming (default="primary")
  &[color="secondary"],
  &[color="tertiary"] {
    --background: var(--app-bg) !important;           /* Transparent background for outline */
    --border-width: 1px !important;                 /* Add border width */
    --border-style: solid !important;               /* Solid border */
    --border-color: var(--ion-color) !important;    /* Border color matches the button color */
    --color: var(--ion-color) !important;           /* Text color matches the button color */
  }

The intent here is to allow me to set all my secondary / tertiary buttons to have consistent styling. In this case, I am attempting to make them follow the fill=“outline” styles. This is important as I want to reuse this custom scss button style code across multiple apps, which must be consistent.

However, the intended outcome is not achieved. Some of the styles are applied, others not - reasons unknown!? In the example above, the border is changed. But none of the colors are.

I’ve run into issue after issue trying to customise the simplest elements. For example, nothing I try allows me to change the text colour of a button when it is clicked. I have tried EVERYTHING I can think of. According to the docs, this shjould be as simple as --color-activated: …

The following code:

// Hover
        &:hover {
          text-decoration: underline;  // Adds an underline
          text-decoration-color: var(--ion-color-secondary, #02c3e8);  // Set the underline color to secondary
          text-underline-offset: 5px;
          text-underline-width: 1.5px;
        }
        --background-hover-opacity: 0.0 !important; // don't want background to show on hover

        // Activated
        &:active {
          --color: var(--ion-color-secondary, #02c3e8) !important;
          // --color: 'primary';
        }
        --color-activated: var(--ion-color-secondary, #02c3e8) !important; // text color when activated
        --background-activated-opacity: 0.0 !important; // remove background - md ripple still appears
        --ripple-color: var(--app-bg);

the underline works. The background goes away, as intended. But the text colour will NOT change.

Sorry, but this seems so arbitrary. Is there some reliable documentation I can follow so I get predictable outcomes?

1 post - 1 participant

Read full topic

Add Electron as official supported package

$
0
0

It would be nice to move away from a community package that is no longer maintained to an official Electron package.

Attempting to get many of the capacitor plugins to work is challenging.

1 post - 1 participant

Read full topic

Best Practices for Integrating iPhone Features into Ionic Apps?

$
0
0

Hi everyone!

I’m currently developing an Ionic app and want to make sure it takes full advantage of the iPhone’s native features. I’ve read a bit about using Capacitor to access iOS-specific functionality, but I’m curious about the best practices others follow to create a smooth iPhone experience within an Ionic app.

What are the must-have integrations when targeting iPhone users? For example, I’m considering adding Face ID/Touch ID authentication, but I’d love to hear if there are any other features or design considerations that might enhance the user experience on iOS.

Also, any tips on performance tweaks or UI adjustments specific to iPhone would be super helpful! Thanks!

1 post - 1 participant

Read full topic

Seeking Video Recording Library/Plugin for Ionic 5.4.16 with Angular 17

$
0
0

Hi everyone!

I’m currently working on an Ionic 5.4.16 project with Angular 17 and am in need of a reliable library or plugin to enable video recording functionality. I tried using @awesome-cordova-plugins/camera version 6.9.0, but unfortunately, it’s throwing errors and isn’t working as expected.

Has anyone come across a stable solution or plugin that’s compatible with this setup? Any recommendations or insights would be greatly appreciated!

1 post - 1 participant

Read full topic

Error After Upgrading Android Studio

$
0
0

Hello. After Upgrading Android Studio version to LadyBug on My Macbook Pro I always get this error “Operation is not supported for read-only collection”… I have followed a lot of workarounds and troubleshootings like this Android Studio : Operation is not supported for read-only collection - Stack Overflow. that recommends unchecking Trace Gradle Import with profile and Reset the IDE settings like Restore Default Settings but nothing works. May you please help!? And of course, my project is ionic 7

1 post - 1 participant

Read full topic


App flow not working 13-11-2014

(android) How to access Capacitor bridge in a class?

$
0
0

Hi everyone.
I’m trying to figure out how to use the Capacitor Android bridge in a class, not in a plugin. Specifically, I’ve created a native NotificationServiceExtension class per OneSignal docs so the app can receive background/data notifications. The notifications are received correctly in the class, so now I want to inform the JS layer of the received notification. Per Capacitor docs, we should be able to achieve this by calling bridge.triggerJSEvent("myCustomEvent", "document", "{ 'dataKey': 'dataValue' }");.
However when this line is executed, I get an error:
Attempt to invoke virtual method 'void com.getcapacitor.Bridge.triggerJSEvent(java.lang.String, java.lang.String, java.lang.String)' on a null object reference.

android/app/src/main/java/com/mycompany/myapp/NotificationServiceExtension.java:

package com.mycompany.myapp;

// Import bridge
import com.getcapacitor.Bridge;
import com.onesignal.notifications.IDisplayableMutableNotification;
import com.onesignal.notifications.INotificationReceivedEvent;
import com.onesignal.notifications.INotificationServiceExtension;
import com.onesignal.debug.internal.logging.Logging;

public class NotificationServiceExtension implements INotificationServiceExtension {

    // TODO: Initialize bridge

    @Override
    public void onNotificationReceived(INotificationReceivedEvent event) {
        IDisplayableMutableNotification notification = event.getNotification();

        Logging.info(String.format("NotificationServiceExtension::onNotificationReceived: notificationId=%s, additionalData=%s", notification.getNotificationId(), notification.getAdditionalData()), null);

        // TODO: Use bridge 
        // bridge.triggerJSEvent("myCustomEvent", "document", "{ 'dataKey': 'dataValue' }");
    }
}

android/app/src/main/AndroidManifest.xml

<?xml version='1.0' encoding='utf-8'?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme" android:usesCleartextTraffic="true">
        <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode" android:exported="true" android:label="@string/title_activity_main" android:launchMode="singleTask" android:name=".MainActivity" android:theme="@style/AppTheme.NoActionBarLaunch">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <meta-data android:name="com.onesignal.NotificationServiceExtension" android:value="com.skoop.terminal2.NotificationServiceExtension" /> 
    </application>
    <uses-permission android:name="android.permission.INTERNET" />
</manifest>

Thanks for your help!

1 post - 1 participant

Read full topic

Why is my Ionic app not working on Android 7 with Vue?

$
0
0

I created a new ionic project and selected vuejs, I didn’t do anything except:

ionic build
ionic cap add android
ionic cap copy
ionic cap sync
ionic cap open android

I have an Android 7 virtual device. I ran the program on it using the run button at the top in the Android-Studio program. The program opens and nothing appears, while for example in Android 11 it works normally:

Android 7 :

ezgif-4-a4af362fd8

Android 7 logcat :

2024-11-14 14:28:37.843  3348-3348  System                  io.ionic.starter                     W  ClassLoader referenced unknown path: /data/app/io.ionic.starter-1/lib/x86
2024-11-14 14:28:37.911  3348-3348  AppCompatDelegate       io.ionic.starter                     D  Checking for metadata for AppLocalesMetadataHolderService : Service not found
2024-11-14 14:28:37.922  3348-3348  art                     io.ionic.starter                     W  Before Android 4.1, method android.graphics.PorterDuffColorFilter androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
2024-11-14 14:28:37.964  3348-3348  System                  io.ionic.starter                     W  ClassLoader referenced unknown path: /system/app/Chrome/lib/x86
2024-11-14 14:28:37.965  3348-3348  WebViewFactory          io.ionic.starter                     I  Loading com.android.chrome version 51.0.2704.90 (code 275509012)
2024-11-14 14:28:38.031  3348-3348  cr_LibraryLoader        io.ionic.starter                     I  Time to load native libraries: 12 ms (timestamps 3127-3139)
2024-11-14 14:28:38.031  3348-3348  cr_LibraryLoader        io.ionic.starter                     I  Expected native library version number "51.0.2704.90", actual native library version number "51.0.2704.90"
2024-11-14 14:28:38.266  3348-3348  WebViewChr...ryProvider io.ionic.starter                     V  Binding Chromium to main looper Looper (main, tid 1) {61384fc}
2024-11-14 14:28:38.266  3348-3348  cr_LibraryLoader        io.ionic.starter                     I  Expected native library version number "51.0.2704.90", actual native library version number "51.0.2704.90"
2024-11-14 14:28:38.278  3348-3348  chromium                io.ionic.starter                     I  [INFO:library_loader_hooks.cc(143)] Chromium logging enabled: level = 0, default verbosity = 0
2024-11-14 14:28:38.396  3348-3348  cr_BrowserStartup       io.ionic.starter                     I  Initializing chromium process, singleProcess=true
2024-11-14 14:28:38.425  3348-3348  ApkAssets               io.ionic.starter                     E  Error while loading asset assets/natives_blob_64.bin: java.io.FileNotFoundException: assets/natives_blob_64.bin
2024-11-14 14:28:38.425  3348-3348  ApkAssets               io.ionic.starter                     E  Error while loading asset assets/snapshot_blob_64.bin: java.io.FileNotFoundException: assets/snapshot_blob_64.bin
2024-11-14 14:28:38.459  3348-3348  <no-tag>                io.ionic.starter                     D  HostConnection::get() New Host Connection established 0x97fe4040, tid 3348
2024-11-14 14:28:38.489  3348-3348  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xa55ac100: maj 2 min 0 rcv 2
2024-11-14 14:28:38.508  3348-3348  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xa55ac100: ver 2 0 (tinfo 0xb05d15a0)
2024-11-14 14:28:38.713  3348-3412  cr_media                io.ionic.starter                     W  Requires BLUETOOTH permission
2024-11-14 14:28:38.755  3348-3348  cr_Ime                  io.ionic.starter                     D  [InputMethodManagerWrapper.java:30] Constructor
2024-11-14 14:28:38.769  3348-3348  cr_AwContents           io.ionic.starter                     W  onDetachedFromWindow called when already detached. Ignoring
2024-11-14 14:28:38.770  3348-3348  cr_Ime                  io.ionic.starter                     D  [InputMethodManagerWrapper.java:59] isActive: false
2024-11-14 14:28:38.772  3348-3348  Capacitor               io.ionic.starter                     D  Starting BridgeActivity
2024-11-14 14:28:38.790  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: CapacitorCookies
2024-11-14 14:28:38.795  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: WebView
2024-11-14 14:28:38.796  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: CapacitorHttp
2024-11-14 14:28:38.797  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: App
2024-11-14 14:28:38.798  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: Haptics
2024-11-14 14:28:38.802  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: Keyboard
2024-11-14 14:28:38.802  3348-3348  Capacitor               io.ionic.starter                     D  Registering plugin instance: StatusBar
2024-11-14 14:28:38.849  3348-3348  Capacitor               io.ionic.starter                     W  Unable to read file at path public/plugins
2024-11-14 14:28:38.850  3348-3348  Capacitor               io.ionic.starter                     D  Loading app at https://localhost
2024-11-14 14:28:38.856  3348-3348  Capacitor               io.ionic.starter                     E  System WebView is not supported
2024-11-14 14:28:38.878  3348-3348  cr_Ime                  io.ionic.starter                     I  ImeThread is not enabled.
2024-11-14 14:28:38.903  3348-3348  Capacitor               io.ionic.starter                     D  App started
2024-11-14 14:28:38.997  3348-3348  Capacitor/AppPlugin     io.ionic.starter                     D  Firing change: true
2024-11-14 14:28:38.997  3348-3348  Capacitor/AppPlugin     io.ionic.starter                     V  Notifying listeners for event appStateChange
2024-11-14 14:28:38.997  3348-3348  Capacitor/AppPlugin     io.ionic.starter                     D  No listeners found for event appStateChange
2024-11-14 14:28:38.998  3348-3348  Capacitor               io.ionic.starter                     D  App resumed
2024-11-14 14:28:39.122  3348-3348  Choreographer           io.ionic.starter                     I  Skipped 72 frames!  The application may be doing too much work on its main thread.
2024-11-14 14:28:39.226  3348-3454  OpenGLRenderer          io.ionic.starter                     I  Initialized EGL, version 1.4
2024-11-14 14:28:39.292  3348-3454  OpenGLRenderer          io.ionic.starter                     D  Swap behavior 1
2024-11-14 14:28:39.292  3348-3454  <no-tag>                io.ionic.starter                     D  HostConnection::get() New Host Connection established 0x95fbfa80, tid 3454
2024-11-14 14:28:39.292  3348-3454  OpenGLRenderer          io.ionic.starter                     W  Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2024-11-14 14:28:39.292  3348-3454  OpenGLRenderer          io.ionic.starter                     D  Swap behavior 0
2024-11-14 14:28:39.299  3348-3454  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xb4205a20: maj 2 min 0 rcv 2
2024-11-14 14:28:39.316  3348-3454  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xb4205a20: ver 2 0 (tinfo 0xb4203a70)
2024-11-14 14:28:39.473  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:39.475  3348-3454  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xb4205a20: ver 2 0 (tinfo 0xb4203a70)
2024-11-14 14:28:39.523  3348-3463  libEGL                  io.ionic.starter                     E  validate_display:99 error 3008 (EGL_BAD_DISPLAY)
2024-11-14 14:28:39.568  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:39.634  3348-3406  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/
2024-11-14 14:28:39.693  3348-3359  art                     io.ionic.starter                     W  Suspending all threads took: 19.172ms
2024-11-14 14:28:39.701  3348-3359  art                     io.ionic.starter                     I  Background partial concurrent mark sweep GC freed 716(85KB) AllocSpace objects, 12(4MB) LOS objects, 36% free, 6MB/10MB, paused 20.400ms total 134.843ms
2024-11-14 14:28:39.776  3348-3463  VideoCapabilities       io.ionic.starter                     I  Unsupported profile 4 for video/mp4v-es
2024-11-14 14:28:39.784  3348-3463  <no-tag>                io.ionic.starter                     D  HostConnection::get() New Host Connection established 0x940b56c0, tid 3463
2024-11-14 14:28:39.816  3348-3463  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xb4206140: maj 2 min 0 rcv 2
2024-11-14 14:28:39.818  3348-3463  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xb4206140: ver 2 0 (tinfo 0x952d4460)
2024-11-14 14:28:39.882  3348-3348  cr_BindingManager       io.ionic.starter                     W  Cannot call determinedVisibility() - never saw a connection for the pid: 3348
2024-11-14 14:28:39.884  3348-3348  cr_Ime                  io.ionic.starter                     D  [InputMethodManagerWrapper.java:59] isActive: true
2024-11-14 14:28:39.884  3348-3348  cr_Ime                  io.ionic.starter                     D  [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow
2024-11-14 14:28:39.967  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:39.983  3348-3406  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/index-pvFfJh0g.js
2024-11-14 14:28:39.985  3348-3406  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/index-7CQuqmcz.css
2024-11-14 14:28:39.986  3348-3406  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/polyfills-legacy-Crc_c0-N.js
2024-11-14 14:28:40.002  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.005  3348-3348  Capacitor/Console       io.ionic.starter                     E  File: https://localhost/ - Line 54 - Msg: Uncaught SyntaxError: Unexpected token (
2024-11-14 14:28:40.046  3348-3348  Capacitor/Console       io.ionic.starter                     W  File: https://localhost/ - Line 1296 - Msg: The key "viewport-fit" is not recognized and ignored.
2024-11-14 14:28:40.079  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.083  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.097  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.110  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.130  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.145  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.163  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.179  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.213  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.228  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.245  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.269  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.272  3348-3348  Capacitor/Console       io.ionic.starter                     E  File: https://localhost/assets/polyfills-legacy-Crc_c0-N.js - Line 4 - Msg: Uncaught (in promise) Error: assets/index-legacy-DhofhxmR.js, https://localhost/ (SystemJS https://github.com/systemjs/systemjs/blob/main/docs/errors.md#8)
2024-11-14 14:28:40.278  3348-3406  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/favicon.png
2024-11-14 14:28:40.827  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.850  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.864  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.880  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.908  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.931  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.945  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.963  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:40.981  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.001  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.014  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.035  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.046  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.063  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:41.079  3348-3348  art                     io.ionic.starter                     W  Attempt to remove non-JNI local reference, dumping thread
2024-11-14 14:28:45.154  3348-3886  ProfileInstaller        io.ionic.starter                     D  Installing profile for io.ionic.starter
2024-11-14 14:28:52.834  3348-3355  art                     io.ionic.starter                     I  Debugger is no longer active
2024-11-14 14:28:52.834  3348-3355  art                     io.ionic.starter                     I  Starting a blocking GC Instrumentation

Note that the program is new!

Android 11 :

Android 11 logcat :

2024-11-14 14:35:04.648  2653-2653  o.ionic.starte          io.ionic.starter                     I  Late-enabling -Xcheck:jni
2024-11-14 14:35:04.655  2653-2653  o.ionic.starte          io.ionic.starter                     I  Unquickening 12 vdex files!
2024-11-14 14:35:04.670  2653-2653  o.ionic.starte          io.ionic.starter                     W  Unexpected CPU variant for X86 using defaults: x86
2024-11-14 14:35:05.048  2653-2653  NetworkSecurityConfig   io.ionic.starter                     D  No Network Security Config specified, using platform default
2024-11-14 14:35:05.049  2653-2653  NetworkSecurityConfig   io.ionic.starter                     D  No Network Security Config specified, using platform default
2024-11-14 14:35:05.243  2653-2700  libEGL                  io.ionic.starter                     D  loaded /vendor/lib/egl/libEGL_emulation.so
2024-11-14 14:35:05.248  2653-2700  libEGL                  io.ionic.starter                     D  loaded /vendor/lib/egl/libGLESv1_CM_emulation.so
2024-11-14 14:35:05.252  2653-2700  libEGL                  io.ionic.starter                     D  loaded /vendor/lib/egl/libGLESv2_emulation.so
2024-11-14 14:35:05.277  2653-2653  AppCompatDelegate       io.ionic.starter                     D  Checking for metadata for AppLocalesMetadataHolderService : Service not found
2024-11-14 14:35:05.390  2653-2653  o.ionic.starte          io.ionic.starter                     W  Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2024-11-14 14:35:05.390  2653-2653  o.ionic.starte          io.ionic.starter                     W  Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2024-11-14 14:35:05.415  2653-2653  WebViewFactory          io.ionic.starter                     I  Loading com.google.android.webview version 83.0.4103.106 (code 410410681)
2024-11-14 14:35:05.418  2653-2653  o.ionic.starte          io.ionic.starter                     I  The ClassLoaderContext is a special shared library.
2024-11-14 14:35:05.419  2653-2653  nativeloader            io.ionic.starter                     D  classloader namespace configured for unbundled product apk. library_path=/product/app/WebViewGoogle/lib/x86:/product/app/WebViewGoogle/WebViewGoogle.apk!/lib/x86:/product/app/TrichromeLibrary/TrichromeLibrary.apk!/lib/x86:/product/lib:/system/product/lib
2024-11-14 14:35:05.452  2653-2653  o.ionic.starte          io.ionic.starter                     I  The ClassLoaderContext is a special shared library.
2024-11-14 14:35:05.452  2653-2653  nativeloader            io.ionic.starter                     D  classloader namespace configured for unbundled product apk. library_path=/product/app/WebViewGoogle/lib/x86:/product/app/WebViewGoogle/WebViewGoogle.apk!/lib/x86:/product/app/TrichromeLibrary/TrichromeLibrary.apk!/lib/x86:/product/lib:/system/product/lib
2024-11-14 14:35:05.707  2653-2653  cr_LibraryLoader        io.ionic.starter                     I  Loaded native library version number "83.0.4103.106"
2024-11-14 14:35:05.714  2653-2653  cr_CachingUmaRecorder   io.ionic.starter                     I  Flushed 3 samples from 3 histograms.
2024-11-14 14:35:05.844  2653-2653  chromium                io.ionic.starter                     E  [ERROR:filesystem_posix.cc(62)] mkdir /data/user/0/io.ionic.starter/cache/WebView/Crashpad: No such file or directory (2)
2024-11-14 14:35:05.930  2653-2653  TetheringManager        io.ionic.starter                     I  registerTetheringEventCallback:io.ionic.starter
2024-11-14 14:35:05.999  2653-2773  chromium                io.ionic.starter                     W  [WARNING:dns_config_service_posix.cc(341)] Failed to read DnsConfig.
2024-11-14 14:35:06.166  2653-2653  Capacitor               io.ionic.starter                     D  Starting BridgeActivity
2024-11-14 14:35:06.215  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: CapacitorCookies
2024-11-14 14:35:06.223  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: WebView
2024-11-14 14:35:06.226  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: CapacitorHttp
2024-11-14 14:35:06.228  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: App
2024-11-14 14:35:06.229  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: Haptics
2024-11-14 14:35:06.231  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: Keyboard
2024-11-14 14:35:06.233  2653-2653  Capacitor               io.ionic.starter                     D  Registering plugin instance: StatusBar
2024-11-14 14:35:06.262  2653-2653  Capacitor               io.ionic.starter                     W  Unable to read file at path public/plugins
2024-11-14 14:35:06.266  2653-2653  Capacitor               io.ionic.starter                     D  Loading app at https://localhost
2024-11-14 14:35:06.288  2653-2774  o.ionic.starte          io.ionic.starter                     W  Accessing hidden method Landroid/media/AudioManager;->getOutputLatency(I)I (greylist, reflection, allowed)
2024-11-14 14:35:06.296  2653-2796  HostConnection          io.ionic.starter                     D  HostConnection::get() New Host Connection established 0xeef9c7f0, tid 2796
2024-11-14 14:35:06.298  2653-2796  HostConnection          io.ionic.starter                     D  HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_sync_buffer_data ANDROID_EMU_vulkan_async_qsri ANDROID_EMU_read_color_buffer_dma GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 
2024-11-14 14:35:06.324  2653-2796  chromium                io.ionic.starter                     E  [ERROR:gl_surface_egl.cc(549)] eglChooseConfig failed with error EGL_SUCCESS
2024-11-14 14:35:06.331  2653-2774  cr_media                io.ionic.starter                     W  Requires BLUETOOTH permission
2024-11-14 14:35:06.345  2653-2796  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xeefa5a80: maj 2 min 0 rcv 2
2024-11-14 14:35:06.346  2653-2796  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xeefa5a80: ver 2 0 (tinfo 0xbff69ad0) (first time)
2024-11-14 14:35:06.406  2653-2653  Capacitor               io.ionic.starter                     D  App started
2024-11-14 14:35:06.407  2653-2653  Capacitor/AppPlugin     io.ionic.starter                     D  Firing change: true
2024-11-14 14:35:06.408  2653-2653  Capacitor/AppPlugin     io.ionic.starter                     V  Notifying listeners for event appStateChange
2024-11-14 14:35:06.408  2653-2653  Capacitor/AppPlugin     io.ionic.starter                     D  No listeners found for event appStateChange
2024-11-14 14:35:06.409  2653-2653  Capacitor               io.ionic.starter                     D  App resumed
2024-11-14 14:35:06.430  2653-2772  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/
2024-11-14 14:35:06.453  2653-2796  chromium                io.ionic.starter                     E  [ERROR:gl_surface_egl.cc(549)] eglChooseConfig failed with error EGL_SUCCESS
2024-11-14 14:35:06.474  2653-2653  Choreographer           io.ionic.starter                     I  Skipped 82 frames!  The application may be doing too much work on its main thread.
2024-11-14 14:35:06.521  2653-2696  HostConnection          io.ionic.starter                     D  HostConnection::get() New Host Connection established 0xeefa4c80, tid 2696
2024-11-14 14:35:06.544  2653-2696  HostConnection          io.ionic.starter                     D  HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_sync_buffer_data ANDROID_EMU_vulkan_async_qsri ANDROID_EMU_read_color_buffer_dma GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 
2024-11-14 14:35:06.544  2653-2696  OpenGLRenderer          io.ionic.starter                     W  Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2024-11-14 14:35:06.551  2653-2696  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xeefa5700: maj 2 min 0 rcv 2
2024-11-14 14:35:06.608  2653-2696  EGL_emulation           io.ionic.starter                     D  eglMakeCurrent: 0xeefa5700: ver 2 0 (tinfo 0xbff4d3b0) (first time)
2024-11-14 14:35:06.636  2653-2696  Gralloc4                io.ionic.starter                     I  mapper 4.x is not supported
2024-11-14 14:35:06.636  2653-2696  HostConnection          io.ionic.starter                     D  createUnique: call
2024-11-14 14:35:06.637  2653-2696  HostConnection          io.ionic.starter                     D  HostConnection::get() New Host Connection established 0xeefa5e00, tid 2696
2024-11-14 14:35:06.637  2653-2696  goldfish-address-space  io.ionic.starter                     D  allocate: Ask for block of size 0x100
2024-11-14 14:35:06.637  2653-2696  goldfish-address-space  io.ionic.starter                     D  allocate: ioctl allocate returned offset 0x3fbffe000 size 0x2000
2024-11-14 14:35:06.644  2653-2696  HostConnection          io.ionic.starter                     D  HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_sync_buffer_data ANDROID_EMU_vulkan_async_qsri ANDROID_EMU_read_color_buffer_dma GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 
2024-11-14 14:35:06.695  2653-2796  VideoCapabilities       io.ionic.starter                     I  Unsupported profile 4 for video/mp4v-es
2024-11-14 14:35:06.696  2653-2796  cr_MediaCodecUtil       io.ionic.starter                     W  HW encoder for video/avc is not available on this device.
2024-11-14 14:35:06.727  2653-2796  EGL_emulation           io.ionic.starter                     D  eglCreateContext: 0xeefa6e30: maj 2 min 0 rcv 2
2024-11-14 14:35:06.750  2653-2696  OpenGLRenderer          io.ionic.starter                     I  Davey! duration=1648ms; Flags=1, IntendedVsync=38656899249, Vsync=40023565861, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=40030744800, AnimationStart=40030767700, PerformTraversalsStart=40031282100, DrawStart=40204287600, SyncQueued=40207387000, SyncStart=40208729300, IssueDrawCommandsStart=40208761700, SwapBuffers=40303013500, FrameCompleted=40306619200, DequeueBufferDuration=192900, QueueBufferDuration=203200, GpuCompleted=72904454231491230, 
2024-11-14 14:35:06.906  2653-2676  o.ionic.starte          io.ionic.starter                     I  Background young concurrent copying GC freed 29128(2380KB) AllocSpace objects, 31(2180KB) LOS objects, 89% free, 2793KB/26MB, paused 12.818ms total 233.591ms
2024-11-14 14:35:07.100  2653-2773  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/index-pvFfJh0g.js
2024-11-14 14:35:07.110  2653-2772  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/index-7CQuqmcz.css
2024-11-14 14:35:07.814  2653-2770  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/Tab1Page-CSdA8T5W.js
2024-11-14 14:35:07.822  2653-2770  Capacitor               io.ionic.starter                     D  Handling local request: https://localhost/assets/ExploreContainer-rA69k34D.js
...

I cant put more logcat

Please note that in the Android 7 emulator the webview program is not activated, but the Chrome browser is present, activated and working. I heard that in Android 7 the webview was replaced by Chrome. Why doesn’t the application work? If there are users in reality with the same device specifications (using Android 7), then the application will not work or what? And can Ionic use Chrome as a webview?

1 post - 1 participant

Read full topic

A problem occurred configuring project ':capacitor-android'. in Android Studio

$
0
0

Could not read build file ‘…/node_modules/@capacitor/android/capacitor/build.gradle’ as it does not exist.
*Try:
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
Get more help at https://help.gradle.org.

I followed all the steps to build a capacitor project in android studio:

npm run build
npx cap add android
npx cap sync
npx cap open android

I have pointed to the path of jdk 17 in android studio since capacitor is using gradle 8.2.1.

1 post - 1 participant

Read full topic

I Use Ionic Capacitor 5 Angular Phone Authentication Implementation in that Recaptha is Not Working for Ios and it works in Andriod

$
0
0

I use
@angular/fire”: “^16.0.0”,
@capacitor/cli”: “5.0.5”,
@capacitor/ios”: “^5.7.1”,
@capacitor/android”: “5.0.5”,

code to send otp

import { AngularFireAuth } from ‘@angular/fire/compat/auth’;
import firebase from ‘firebase/compat/app’;
constructor(private http: HttpClient,public ngFireAuth: AngularFireAuth,private storage: Storage) {}

recaptchaVerifier!: firebase.auth.RecaptchaVerifier;
this.recaptchaVerifier = new firebase.auth.RecaptchaVerifier(‘recaptcha-container’, {
‘size’: ‘invisible’, // or ‘normal’ for a visible captcha
‘callback’: (response: string) => {
// reCAPTCHA solved - proceed with phone authentication
// console.log(“reCAPTCHA solved, response:”, response);
// You can use the response token here if needed
},
‘expired-callback’: () => {
// Handle expired reCAPTCHA
console.log(“reCAPTCHA expired. Please solve it again.”);
}
});
}

async sendOtp(phoneNumber: string, recaptchaVerifier: firebase.auth.RecaptchaVerifier) {
return this.ngFireAuth.signInWithPhoneNumber(phoneNumber, recaptchaVerifier);
}

Recaptha Does work in Ios i get Undefined error in console iOS.
Same code works for Andriod
I Observe in ios my url is capacitor://127.0.0.1 which i cannot directly added in firebase → authroized domain. for Andriod it is http://127.0.01 and identity Took API is working there not in ios

1 post - 1 participant

Read full topic

What happens if I don't use any ionic components?

$
0
0

I use Nuxtjs and ionic specifically Nuxt Ionic plugin if you don’t know this framework let’s say I use VueJs with Ionic…

I have a question, now if I don’t use any of the ionic components what happens to the application? Because I tried not adding any element and exported the application and installed it on my Android device initially to see if there is a problem.

There may be minor problems but I want to know what happens…

Because Nuxt Ionic says:

Pages and Navigation

  • Avoid using <NuxtPage>, <NuxtLayout> or <NuxtLink>. These are currently not integrated with this module.

Instead, Ionic expects <ion-router-outlet> to show the route component, and useIonRouter() or the router-link property on any ion- component to change page.

app.vue

<template>
 <ion-app>
   <ion-router-outlet />
 </ion-app>
</template>
  • The root element of every page must always be <ion-page>.

This is required by Ionic to set up page transitions and stack navigation. Each view that is navigated to using the router must include an component.

  • When navigating from a tabbed route to a non-tabbed route, route.params from the auto-imported >useRoute()` will always be an empty object.

A current workaround is to import { useRoute } from 'vue-router';.

1 post - 1 participant

Read full topic

Where to import ionic components in standalone angular component

$
0
0

I’m trying to use the ion-password-toggle component in a standalone Angular component.

The ionic docs say the following:

All Ionic imports should be imported from the @ionic/angular/standalone submodule.

However, I do not see ion-password-toggle in that submodule:

export { IonBackButton } from './navigation/back-button';
export { IonModal } from './overlays/modal';
export { IonPopover } from './overlays/popover';
export { IonRouterOutlet } from './navigation/router-outlet';
export { IonRouterLink, IonRouterLinkWithHref } from './navigation/router-link-delegate';
export { IonTabs } from './navigation/tabs';
export { provideIonicAngular } from './providers/ionic-angular';
export { ActionSheetController } from './providers/action-sheet-controller';
export { AlertController } from './providers/alert-controller';
export { AnimationController } from './providers/animation-controller';
export { GestureController } from './providers/gesture-controller';
export { LoadingController } from './providers/loading-controller';
export { MenuController } from './providers/menu-controller';
export { ModalController } from './providers/modal-controller';
export { PickerController } from './providers/picker-controller';
export { PopoverController } from './providers/popover-controller';
export { ToastController } from './providers/toast-controller';
export { DomController, NavController, Config, Platform, NavParams, IonicRouteStrategy, ViewWillEnter, ViewDidEnter, ViewWillLeave, ViewDidLeave, } from '@ionic/angular/common';
export { IonNav } from './navigation/nav';
export { IonCheckbox, IonDatetime, IonInput, IonIcon, IonRadioGroup, IonRange, IonSearchbar, IonSegment, IonSelect, IonTextarea, IonToggle, } from './directives';
export * from './directives/proxies';
export { createAnimation, createGesture, iosTransitionAnimation, mdTransitionAnimation, IonicSlides, getPlatforms, isPlatform, getTimeGivenProgression, Animation, AnimationBuilder, AnimationCallbackOptions, AnimationDirection, AnimationFill, AnimationKeyFrames, AnimationLifecycle, Gesture, GestureConfig, GestureDetail, NavComponentWithProps, SpinnerTypes, AccordionGroupCustomEvent, AccordionGroupChangeEventDetail, BreadcrumbCustomEvent, BreadcrumbCollapsedClickEventDetail, ActionSheetOptions, ActionSheetButton, AlertOptions, AlertInput, AlertButton, BackButtonEvent, CheckboxCustomEvent, CheckboxChangeEventDetail, DatetimeCustomEvent, DatetimeChangeEventDetail, InfiniteScrollCustomEvent, InputCustomEvent, InputChangeEventDetail, ItemReorderEventDetail, ItemReorderCustomEvent, ItemSlidingCustomEvent, IonicSafeString, LoadingOptions, MenuCustomEvent, ModalOptions, NavCustomEvent, PickerOptions, PickerButton, PickerColumn, PickerColumnOption, PlatformConfig, PopoverOptions, RadioGroupCustomEvent, RadioGroupChangeEventDetail, RangeCustomEvent, RangeChangeEventDetail, RangeKnobMoveStartEventDetail, RangeKnobMoveEndEventDetail, RefresherCustomEvent, RefresherEventDetail, RouterEventDetail, RouterCustomEvent, ScrollBaseCustomEvent, ScrollBaseDetail, ScrollDetail, ScrollCustomEvent, SearchbarCustomEvent, SearchbarChangeEventDetail, SearchbarInputEventDetail, SegmentChangeEventDetail, SegmentCustomEvent, SegmentValue, SelectChangeEventDetail, SelectCustomEvent, TabsCustomEvent, TextareaChangeEventDetail, TextareaCustomEvent, ToastOptions, ToastButton, ToastLayout, ToggleChangeEventDetail, ToggleCustomEvent, } from '@ionic/core/components';

Simply importing IonInput results in this error in my template:

‘ion-input-password-toggle’ is not a known element

From where should I be importing the Ion Input Password Toggle component?

1 post - 1 participant

Read full topic


404 Error when App is on Web Server and browser refresh is done

$
0
0

Hi,

I have placed my app on a web server, and I am getting a 404 error. I have been told this might be related to not having a .htaccess file. Could someone advise me on this issue?

1 post - 1 participant

Read full topic

Resolution of Camera in PWA Elements

$
0
0

Hello!
I use Capacitor/Camera with PWA Eements.

The resolution of Photo is only 640x480. I need a maximum possible resolution.

I tested and found out, that the resolution can be set in costrants by camera initialization.

in Camera.tsx for example:

async componentDidLoad() {
    this.defaultConstraints = {
      video: {
        facingMode: this.facingMode
      }
    };

    // Figure out how many cameras we have
    await this.queryDevices();
    const maxResolutionConstraints = await this.getMaxPhotoResolutionConstraints();
    // Initialize the camera
    await this.initCamera(maxResolutionConstraints);
  }

async getMaxPhotoResolutionConstraints() {
    const stream = await navigator.mediaDevices.getUserMedia(Object.assign({ video: true, audio: false }, this.defaultConstraints));
    const track = stream && stream.getTracks()[0];
    const capabilities = track && track.getCapabilities();
    return {
      video: {
        facingMode: this.facingMode,
        width: { exact: capabilities.width.max },
        height: { exact: capabilities.height.max },
      }
    };
  }

Is it possible to improve this component and to add input properties with maximum width and height or a maximum possible resolution?

1 post - 1 participant

Read full topic

Is there a plug in to allow users to choose from email apps installed on their device to be opened from an ionic app?

$
0
0

I have a use case where the user should be able to open their email inbox (not in compose mode, just to view the email inbox).

So far, I have looked into the usage for the following plug-ins:

Is there a plug-in that would allow a user to choose from different email apps?

3 posts - 3 participants

Read full topic

NullPointer Exception while building app in Android Studio

$
0
0
java.lang.NullPointerException
	at com.android.ide.common.resources.NodeUtils.processSingleNodeNamespace(NodeUtils.java:186)
	at com.android.ide.common.resources.NodeUtils.updateNamespace(NodeUtils.java:147)
	at com.android.ide.common.resources.NodeUtils.adoptNode(NodeUtils.java:49)
	at com.android.ide.common.resources.MergedResourceWriter.postWriteAction(MergedResourceWriter.java:544)
	at com.android.ide.common.resources.MergeWriter.end(MergeWriter.java:46)
	at com.android.ide.common.resources.MergedResourceWriter.end(MergedResourceWriter.java:200)
	at com.android.ide.common.resources.DataMerger.mergeData(DataMerger.java:292)
	at com.android.ide.common.resources.ResourceMerger.mergeData(ResourceMerger.java:385)
	at com.android.build.gradle.tasks.MergeResources.lambda$doFullTaskAction$1(MergeResources.java:316)
	at com.android.build.gradle.internal.tasks.Blocks.recordSpan(Blocks.java:51)
	at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:312)
	at com.android.build.gradle.tasks.MergeResources.doTaskAction(MergeResources.java:371)
	at com.android.build.gradle.internal.tasks.NewIncrementalTask$taskAction$$inlined$recordTaskAction$1.invoke(BaseTask.kt:69)
	at com.android.build.gradle.internal.tasks.Blocks.recordSpan(Blocks.java:51)
	at com.android.build.gradle.internal.tasks.NewIncrementalTask.taskAction(NewIncrementalTask.kt:46)
	at jdk.internal.reflect.GeneratedMethodAccessor417.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:104)
	at org.gradle.api.internal.project.taskfactory.IncrementalInputsTaskAction.doExecute(IncrementalInputsTaskAction.java:32)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:51)
	at org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute(AbstractIncrementalTaskAction.java:25)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:29)
	at org.gradle.api.internal.tasks.execution.TaskExecution$3.run(TaskExecution.java:242)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
	at org.gradle.api.internal.tasks.execution.TaskExecution.executeAction(TaskExecution.java:227)
	at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:210)
	at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:193)
	at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:171)
	at org.gradle.internal.execution.steps.ExecuteStep.executeInternal(ExecuteStep.java:89)
	at org.gradle.internal.execution.steps.ExecuteStep.access$000(ExecuteStep.java:40)
	at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:53)
	at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:50)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
	at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:50)
	at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:40)
	at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:68)
	at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:38)
	at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:48)
	at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:36)
	at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:41)
	at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:74)
	at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:55)
	at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:51)
	at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:29)
	at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:61)
	at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:42)
	at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:60)
	at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:27)
	at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:180)
	at org.gradle.internal.execution.steps.BuildCacheStep.lambda$execute$1(BuildCacheStep.java:75)
	at org.gradle.internal.Either$Right.fold(Either.java:175)
	at org.gradle.internal.execution.caching.CachingState.fold(CachingState.java:59)
	at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:73)
	at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:48)
	at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:36)
	at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:25)
	at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:36)
	at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:22)
	at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:110)
	at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$2(SkipUpToDateStep.java:56)
	at java.base/java.util.Optional.orElseGet(Optional.java:369)
	at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:56)
	at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:38)
	at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:73)
	at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:44)
	at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
	at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
	at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:89)
	at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:50)
	at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:114)
	at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:57)
	at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:76)
	at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:50)
	at org.gradle.internal.execution.steps.SkipEmptyWorkStep.executeWithNoEmptySources(SkipEmptyWorkStep.java:249)
	at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:86)
	at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:54)
	at org.gradle.internal.execution.steps.RemoveUntrackedExecutionStateStep.execute(RemoveUntrackedExecutionStateStep.java:32)
	at org.gradle.internal.execution.steps.RemoveUntrackedExecutionStateStep.execute(RemoveUntrackedExecutionStateStep.java:21)
	at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
	at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:43)
	at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:31)
	at org.gradle.internal.execution.steps.AssignWorkspaceStep.lambda$execute$0(AssignWorkspaceStep.java:40)
	at org.gradle.api.internal.tasks.execution.TaskExecution$4.withWorkspace(TaskExecution.java:287)
	at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:40)
	at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:30)
	at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:37)
	at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:27)
	at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:44)
	at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:33)
	at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:76)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:144)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:133)
	at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:77)
	at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
	at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
	at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:74)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:333)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:320)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:313)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:299)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:143)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:227)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:218)
	at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:140)
	at org.gradle.execution.plan.DefaultPlanExecutor.process(DefaultPlanExecutor.java:72)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.executeWithServices(DefaultTaskExecutionGraph.java:144)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.execute(DefaultTaskExecutionGraph.java:129)
	at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:42)
	at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:51)
	at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:54)
	at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:43)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
	at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
	at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
	at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor.execute(BuildOperationFiringBuildWorkerExecutor.java:40)
	at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$executeTasks$7(DefaultBuildLifecycleController.java:165)
	at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:238)
	at org.gradle.internal.model.StateTransitionController.lambda$tryTransition$8(StateTransitionController.java:174)
	at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:44)
	at org.gradle.internal.model.StateTransitionController.tryTransition(StateTransitionController.java:174)
	at org.gradle.internal.build.DefaultBuildLifecycleController.executeTasks(DefaultBuildLifecycleController.java:165)
	at org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.runWork(DefaultBuildWorkGraphController.java:142)
	at org.gradle.composite.internal.DefaultBuildController.doBuild(DefaultBuildController.java:231)
	at org.gradle.internal.Factories$1.create(Factories.java:31)
	at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:270)
	at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:119)
	at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:124)
	at org.gradle.composite.internal.DefaultBuildController.doRun(DefaultBuildController.java:204)
	at org.gradle.composite.internal.DefaultBuildController.access$000(DefaultBuildController.java:51)
	at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.run(DefaultBuildController.java:264)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:829)

My @capacitor/core version is 4.6.1. I’m using jdk 11 in Android Studio. I removed the .gradle folder and restarted Android Studio. I’m not using any capacitor plugin in my app.

1 post - 1 participant

Read full topic

Cannot find module @rollup/rollup-linux-x64-gnu

$
0
0

All of a sudden new web builds fail with this error.

Build Stack
Linux - 2024.10

±----------------------------------------------+
| fastlane summary |
±-----±-------------------------±------------+
| Step | Action | Time (in s) |
±-----±-------------------------±------------+
| 1 | add_extra_platforms | 0 |
| 2 | default_platform | 0 |
| 3 | sentry_init | 0 |
| 4 | begin_building | 0 |
| 5 | build_summary | 1 |
| 6 | set_ionic_cli | 1 |
| 7 | detect_package_manager | 0 |
| 8 | add_git_credentials | 0 |
| 9 | get_appflow_config | 0 |
| 10 | dependency_install | 80 |
| 11 | create_capacitor_config | 0 |
| 12 | get_web_dir | 0 |
| :boom: | build_pro_app | 0 |
| 14 | upload_logs | 4 |
| 15 | sentry_capture_exception | 0 |
±-----±-------------------------±------------+

[15:44:07]: fastlane finished with errors
/usr/local/bundle/bin/fastlane: [!] Exit status of command ‘npm run build’ was 127 instead of 0. (FastlaneCore::Interface::FastlaneShellError)

An unhandled exception occurred: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try npm i again after removing both package-lock.json and node_modules directory.
See “/tmp/ng-pah78y/angular-errors.log” for further details.

This is definitely on appflow’s side since i only changed some code in a couple of .js files, but if there’s a way to fix it on my end, how would i go about it?

Edit: added build stack. Also, it seems to be related to the latest version of angular with that particulat build stack. Tried the 2023.10 and it fails, the same way, but with a lot of warnings. about mismatch versions of node and angular.

Angular CLI: 18.2.12
Node: 22.11.0
Package Manager: npm 10.9.0
OS: darwin x64

Angular: 18.2.12
… animations, cli, common, compiler, compiler-cli, core, forms
… language-service, platform-browser, platform-browser-dynamic
… router

Package Version

@angular-devkit/architect 0.1802.12
@angular-devkit/build-angular 18.2.12
@angular-devkit/core 18.2.12
@angular-devkit/schematics 18.2.12
@ngtools/webpack 18.2.12
@schematics/angular 18.2.12 (cli-only)
rxjs 7.8.1
typescript 5.5.4
zone.js 0.14.10

2 posts - 1 participant

Read full topic

Capacitor sqlite app with react and ionic

$
0
0

I’m making an cross plateform app (web and mobile) with react capacitor and sqlite with serveral pages. I’ve got different pages. I import json datas from a server. But I can’t manage bdd persistance between pages. How to setup initialization and opening bdd to get an persistant sqlite bdd through navigation ? using react context ? I’m trying to do it but doesn’t work. when I go through certain pages I lose the data from the database or i need to close the app and open it to get database for an specific page. Thanks for your help !

1 post - 1 participant

Read full topic

Live reload repeats infinitely after upgrading Ionic and Angular

$
0
0

Hi,
I’ve upgraded my app from Ionic 6 to Ionic 8 (Via version 7), and also gone from Angular 14 to 18 (step by step)

After doing so, I experience that when I’m running ionic serve and save my code, live reload starts, and keeps reloading over and over again. It goes so fast that I am not able to see if there are any errors. It can keep doing that for minutes before I eventually have to close the browser window.

If i build the app and runs it on a device, things work as they should.

I’m not even sure where to begin here.

Here is my ionic info

Ionic:

   Ionic CLI                     : 7.2.0 (hidden path)
   Ionic Framework               : @ionic/angular 8.4.0
   @angular-devkit/build-angular : 18.2.12
   @angular-devkit/schematics    : 18.2.12
   @angular/cli                  : 18.2.12
   @ionic/angular-toolkit        : 11.0.1

Capacitor:

   Capacitor CLI      : 6.1.2
   @capacitor/android : 6.1.2
   @capacitor/core    : 6.1.2
   @capacitor/ios     : 6.1.2

Utility:

   cordova-res : 0.15.4
   native-run  : 2.0.1

System:

   NodeJS : v18.20.4 (/usr/local/bin/node)
   npm    : 9.9.3
   OS     : macOS Unknown

1 post - 1 participant

Read full topic


Swipe down to close ion-modal

$
0
0

Hello everyone, I use ion-modal with breakpoints, I only use breakpoint 1 on purpose as I want the handle to be visible and a tiny part of the backdrop to get that overlay feel

    <ion-modal
        ref="searchBarModal"
        :is-open="openModal"
        :initial-breakpoint="1"
        :breakpoints="[1]"
        @will-present="onModalWillPresent"
        @did-present="onModalDidPresent"
        @did-dismiss="handleResetResults"
    >
(....)

is there a way to close the modal now by swiping down? I know there used to be swipeToClose prop but that doesn’t seem to work. Should I create a gesture for it? What is your advice? Thank you

2 posts - 1 participant

Read full topic



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>