🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

AdMob

AdMobは、事前に指定した条件に従ってアプリに広告を表示するGoogleのサービス。開発者の向けのサービスで、広告を掲載することにより、収益を得ることが可能です。その他、見た目や雰囲気などアプリに合う広告に変更したり、広告表示の場所を指定することもできます。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

1回答

3237閲覧

ionic capacitorはAndroidXに対応していない?

Gento

総合スコア77

Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

AdMob

AdMobは、事前に指定した条件に従ってアプリに広告を表示するGoogleのサービス。開発者の向けのサービスで、広告を掲載することにより、収益を得ることが可能です。その他、見た目や雰囲気などアプリに合う広告に変更したり、広告表示の場所を指定することもできます。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2019/11/15 00:57

前提・実現したいこと

capacitorとcordova pluginはAndroidXに対応しているのか?を知りたい。
また、対応している場合、どうすれば良いのか?

発生している問題・エラーメッセージ

capacitorを使ったionicプロジェクトにて、AbMobを入れようとしたのが始まりでした。

Android Material and appcompat Manifest merger failedのエラーが発生。
こちらの解決策で多く上がっていたAndroidXにしてみる事にしました。

Migrate to AndroidX

AndroidXに移行したらcapacitorとcordova pluginが見つからないとのエラーが発生しました。

エラー: パッケージandroid.support.annotationは存在しません エラー: パッケージandroid.support.design.widgetは存在しません エラー: パッケージandroid.support.design.widgetは存在しません エラー: パッケージandroid.support.design.widgetは存在しません エラー: シンボルを見つけられません シンボル: クラス BottomSheetDialogFragment エラー: パッケージBottomSheetBehaviorは存在しません エラー: パッケージBottomSheetBehaviorは存在しません エラー: メソッドはスーパータイプのメソッドをオーバーライドまたは実装しません エラー: シンボルを見つけられません シンボル: 変数 super 場所: クラス ModalsBottomSheetDialogFragment エラー: シンボルを見つけられません シンボル: メソッド getResources() 場所: クラス ModalsBottomSheetDialogFragment * * *こんな感じでたくさん
エラー: シンボルを見つけられません シンボル: クラス NonNull 場所: クラス AdMob

capacitorでのエラー例

AdMobでのエラー例

該当のソースコード

build.gradle(Project)

gradle

1// Top-level build file where you can add configuration options common to all sub-projects/modules. 2 3buildscript { 4 5 repositories { 6 google() 7 jcenter() 8 } 9 dependencies { 10 classpath 'com.android.tools.build:gradle:3.5.1' 11 classpath 'com.google.gms:google-services:4.3.2' 12 13 // NOTE: Do not place your application dependencies here; they belong 14 // in the individual module build.gradle files 15 } 16} 17 18allprojects { 19 repositories { 20 google() 21 jcenter() 22 } 23} 24 25task clean(type: Delete) { 26 delete rootProject.buildDir 27}

build.gradle(Module)

Gradle

1apply plugin: 'com.android.application' 2 3android { 4 compileSdkVersion 28 5 defaultConfig { 6 applicationId "com.gento.test" 7 minSdkVersion 21 8 targetSdkVersion 28 9 versionCode 1 10 versionName "1.0" 11 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 12 } 13 buildTypes { 14 release { 15 minifyEnabled false 16 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 } 18 } 19} 20 21repositories { 22 maven { 23 url "https://dl.bintray.com/ionic-team/capacitor" 24 } 25 flatDir{ 26 dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs' 27 } 28} 29 30dependencies { 31 implementation fileTree(include: ['*.jar'], dir: 'libs') 32 implementation 'androidx.appcompat:appcompat:1.0.0' 33 implementation 'com.google.firebase:firebase-ads:18.0.0' 34 implementation project(':capacitor-android') 35 testImplementation 'junit:junit:4.12' 36 androidTestImplementation 'androidx.test.ext:junit:1.1.1' 37 androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0' 38 implementation project(':capacitor-cordova-android-plugins') 39} 40 41apply from: 'capacitor.build.gradle' 42 43try { 44 def servicesJSON = file('google-services.json') 45 if (servicesJSON.text) { 46 apply plugin: 'com.google.gms.google-services' 47 } 48} catch(Exception e) { 49 logger.warn("google-services.json not found, google-services plugin not applied. Push Notifications won't work") 50}

gradle.properties

gradle

1org.gradle.jvmargs=-Xmx1536m 2android.useAndroidX=true 3android.enableJetifier=true

試したこと

こちら登場している** Jetifier**をnpm install jetifierとしてみましたが、変化なし。。。

補足情報(FW/ツールのバージョンなど)

ionic info

Ionic: Ionic CLI : 5.4.6 (/usr/local/lib/node_modules/ionic) Ionic Framework : @ionic/angular 4.10.0 @angular-devkit/build-angular : 0.801.3 @angular-devkit/schematics : 8.1.3 @angular/cli : 8.1.3 @ionic/angular-toolkit : 2.0.0 Capacitor: Capacitor CLI : 1.2.1 @capacitor/core : 1.2.1 Cordova: Cordova CLI : 9.0.0 (cordova-lib@9.0.1) Cordova Platforms : none Cordova Plugins : no whitelisted plugins (0 plugins total) Utility: cordova-res : 0.6.0 (update available: 0.8.1) native-run : 0.2.8 (update available: 0.2.9) System: NodeJS : v10.15.1 (/usr/local/bin/node) npm : 6.12.1 OS : macOS Mojave Xcode : Xcode 11.1 Build version 11A1027

Project Structure
Android Studio

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こちらによるとバージョン2.0.0で対応するのだと思います。

https://github.com/ionic-team/capacitor/pull/2045

投稿2019/11/18 14:24

shi_o

総合スコア53

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Gento

2019/11/20 01:22

リンク提供に感謝します!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問