質問をすることでしか得られない、回答やアドバイスがある。

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

ただいまの
回答率

90.77%

  • JavaScript

    15343questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • Monaca

    944questions

    「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

  • Cordova

    408questions

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

【Monaca】Monacaで作成したアプリバージョンの取得方法【cordova】

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 455

hisakichi

score 2

お世話になっております。

Monacaを使用してアプリを作成しています。

メニュー画面にアプリのバージョンを載せるために、
cordova-plugin-app-versionを使用しています。

しかし、cordova-plugin-app-versionをプラグインしてから
アプリのビルドが通らなかったり、画面遷移が重くなりました。

アプリのバージョンを取得する他の方法はあるでしょうか?

ご存知ならご助力お願いします。

追記
Androidのカスタムビルドデバッカーのビルドに失敗します。(iOSは成功します。)
以下にビルドエラーを記します。

Fetch queue Info...
Start building 59fa86c0e78885f2608b4567
Setup working directories...
Download project archive...
Extract project archive...
Fetch project info...
Search builder by config
Webview:null
Arch:null
cordova version: 6.5.0

  • preBuild -
    buildForAndroid

  • Cordova create -
    $ /data/build-server/cordova/6.5.0/bin/cordova create /tmp/monaca/59fa86c0e78885f2608b4567/project
    Creating a new cordova project.

  • Copy .monaca-res directory -

  • Copy config.xml -

  • Cordova platform add -
    $ /data/build-server/cordova/6.5.0/bin/cordova platform add /data/build-server/cordova/platforms/android/6.2.3
    Adding android project...
    Creating Cordova project for the Android platform:
    Path: platforms/android
    Package: jp.co.jmas.kenrenTest
    Name: OkasciIrtsMobileApp
    Activity: MainActivity
    Android target: android-25
    Subproject Path: CordovaLib
    Android project created with cordova-android@6.2.3
    Discovered plugin "cordova-plugin-inappbrowser" in config.xml. Adding it to the project
    Fetching plugin "cordova-plugin-inappbrowser@^1.7.1" via npm
    Installing "cordova-plugin-inappbrowser" for android

  • Copy external plugin setting files -

  • Copy www files -

  • Cordova plugin add -
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add mobi.monaca.plugins.Monaca
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add cordova-plugin-whitelist@1.3.1
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add cordova-plugin-splashscreen@4.0.3
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add cordova-custom-config@2.0.3
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add ncmb-push-monaca-plugin@2.0.7
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add /tmp/monaca/59fa86c0e78885f2608b4567/output/plugins/cordova-plugin-app-version
    $ /data/build-server/cordova/6.5.0/bin/cordova plugin add /data/build-server/debugger/android/6.5 --variable MONACA_DEBUGGER_PLUGIN_ENDPOINT_BASE_DOMAIN=monaca.mobi --variable MONACA_DEBUGGER_PLUGIN_NAME=Monaca Debugger

  • Cordova prepare -
    $ /data/build-server/cordova/6.5.0/bin/cordova prepare android
    cordova-custom-config: Skipping auto-restore of config file backup(s)

Fail to remove /tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/assets/cordova_files.txt

  • Cordova compile -
    $ /data/build-server/cordova/6.5.0/bin/cordova compile --debug --device
    ANDROID_HOME=/data/android-sdk
    JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home
    :wrapper

BUILD SUCCESSFUL

Total time: 0.922 secs
Subproject Path: CordovaLib
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
at build_95xwgk6o8ilu96uyqnfj7iu6x.run(/private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/build.gradle:139)
The JavaCompile.setDependencyCacheDir() method has been deprecated and is scheduled to be removed in Gradle 4.0.
Incremental java compilation is an incubating feature.
The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instead.
:preBuild UP-TO-DATE
:preDebugBuild UP-TO-DATE
:checkDebugManifest
:preReleaseBuild UP-TO-DATE
:CordovaLib:preBuild UP-TO-DATE
:CordovaLib:preDebugBuild UP-TO-DATE
:CordovaLib:checkDebugManifest
:CordovaLib:prepareDebugDependencies
:CordovaLib:compileDebugAidl
:CordovaLib:compileDebugNdk UP-TO-DATE
:CordovaLib:compileLint
:CordovaLib:copyDebugLint UP-TO-DATE
:CordovaLib:mergeDebugShaders
:CordovaLib:compileDebugShaders
:CordovaLib:generateDebugAssets
:CordovaLib:mergeDebugAssets
:CordovaLib:mergeDebugProguardFiles
:CordovaLib:packageDebugRenderscript UP-TO-DATE
:CordovaLib:compileDebugRenderscript
:CordovaLib:generateDebugResValues
:CordovaLib:generateDebugResources
:CordovaLib:packageDebugResources
:CordovaLib:processDebugManifest
:CordovaLib:generateDebugBuildConfig
:CordovaLib:processDebugResources
:CordovaLib:generateDebugSources
:CordovaLib:incrementalDebugJavaCompilationSafeguard
:CordovaLib:compileDebugJavaWithJavac
:CordovaLib:compileDebugJavaWithJavac - is not incremental (e.g. outputs have changed, no previous execution, etc.).
:CordovaLib:processDebugJavaRes UP-TO-DATE
:CordovaLib:transformResourcesWithMergeJavaResForDebug
:CordovaLib:transformClassesAndResourcesWithSyncLibJarsForDebug
:CordovaLib:mergeDebugJniLibFolders
:CordovaLib:transformNative_libsWithMergeJniLibsForDebug
:CordovaLib:transformNative_libsWithSyncJniLibsForDebug
:CordovaLib:bundleDebug
:CordovaLib:preReleaseBuild UP-TO-DATE
:CordovaLib:checkReleaseManifest
:CordovaLib:prepareReleaseDependencies
:CordovaLib:compileReleaseAidl
:CordovaLib:compileReleaseNdk UP-TO-DATE
:CordovaLib:copyReleaseLint UP-TO-DATE
:CordovaLib:mergeReleaseShaders
:CordovaLib:compileReleaseShaders
:CordovaLib:generateReleaseAssets
:CordovaLib:mergeReleaseAssets
:CordovaLib:mergeReleaseProguardFiles
:CordovaLib:packageReleaseRenderscript UP-TO-DATE
:CordovaLib:compileReleaseRenderscript
:CordovaLib:generateReleaseResValues
:CordovaLib:generateReleaseResources
:CordovaLib:packageReleaseResources
:CordovaLib:processReleaseManifest
:CordovaLib:generateReleaseBuildConfig
:CordovaLib:processReleaseResources
:CordovaLib:generateReleaseSources
:CordovaLib:incrementalReleaseJavaCompilationSafeguard
:CordovaLib:compileReleaseJavaWithJavac
:CordovaLib:compileReleaseJavaWithJavac - is not incremental (e.g. outputs have changed, no previous execution, etc.).
:CordovaLib:processReleaseJavaRes UP-TO-DATE
:CordovaLib:transformResourcesWithMergeJavaResForRelease
:CordovaLib:transformClassesAndResourcesWithSyncLibJarsForRelease
:CordovaLib:mergeReleaseJniLibFolders
:CordovaLib:transformNative_libsWithMergeJniLibsForRelease
:CordovaLib:transformNative_libsWithSyncJniLibsForRelease
:CordovaLib:bundleRelease
:prepareComAndroidSupportAppcompatV72311Library
:prepareComAndroidSupportSupportV42221Library
:prepareComGoogleAndroidGmsPlayServicesBase810Library
:prepareComGoogleAndroidGmsPlayServicesBasement810Library
:prepareComGoogleAndroidGmsPlayServicesGcm810Library
:prepareOrgApacheCordovaCordovaLib623DebugLibrary
:prepareDebugDependencies
:compileDebugAidl
:compileDebugRenderscript
:generateDebugBuildConfig
:generateDebugResValues
:generateDebugResources
:mergeDebugResources
:processDebugManifest
:processDebugResources
:generateDebugSources
:incrementalDebugJavaCompilationSafeguard
:compileDebugJavaWithJavac
:compileDebugJavaWithJavac - is not incremental (e.g. outputs have changed, no previous execution, etc.).
:compileDebugJavaWithJavac FAILED

BUILD FAILED

Total time: 6.667 secs

  • postBuild -
    Remove working directories...
    Build Error: Error: Sandbox Exec Error: [ 注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    /private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/src/mobi/monaca/plugins/debugger/activity/menu/ScreenShotEditorActivity.java:105: エラー: シンボルを見つけられません
    ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
    ^
    シンボル:   メソッド requestPermissions(ScreenShotEditorActivity,String[],int)
    場所: クラス ActivityCompat
    注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    注意:/private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/src/mobi/monaca/plugins/debugger/util/UrlUtil.javaの操作は、未チェックまたは安全ではありません。
    注意:詳細は、-Xlint:uncheckedオプションを指定して再コンパイルしてください。
    エラー1個

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
    Error: /private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/gradlew: Command failed with exit code 1 Error output:
    注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    /private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/src/mobi/monaca/plugins/debugger/activity/menu/ScreenShotEditorActivity.java:105: エラー: シンボルを見つけられません
    ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
    ^
    シンボル:   メソッド requestPermissions(ScreenShotEditorActivity,String[],int)
    場所: クラス ActivityCompat
    注意:一部の入力ファイルは非推奨のAPIを使用またはオーバーライドしています。
    注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。
    注意:/private/tmp/monaca/59fa86c0e78885f2608b4567/project/platforms/android/src/mobi/monaca/plugins/debugger/util/UrlUtil.javaの操作は、未チェックまたは安全ではありません。
    注意:詳細は、-Xlint:uncheckedオプションを指定して再コンパイルしてください。
    エラー1個

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
    ]
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

0

私もcordova-plugin-app-versionというプラグインを使用していますが、このようなエラーは出ていません。
ただ、別のプラグインで似たようなエラーに遭遇したので参考になればと思い、投稿させていただきます。
cordova-plugin-local-notificationsというプラグインを使用していたのですが、プラグイン側のバージョンアップにより、Androidのビルド時のみ、同じようなエラーメッセージが出るようになりました。
原因は、プラグイン側がAndroidの最新の機能を要求しているのに、monaca側のAndroid用のライブラリーが最新でないためということでした。
取りあえず、cordova-plugin-local-notificationsを一つ前のバージョンに戻すことで正常にビルドできるようになりました。
monacaの開発元に問い合わせたところ、Androidのライブラリーを更新するタイミングはCordovaをバージョンアップするタイミングになるそうです。そのため、すぐには対応できないとのことでした。

cordova-plugin-app-versionはここ1年ぐらいアップデートしていないようですので、私のトラブルとは違う原因かもしれませんが、エラーメッセージはほぼ同じようなものでした。
他のプラグインのエラーということは考えられないでしょうか。プラグインをgitと連携しているとバージョンアップに気づきませんので。
以上、ご参考まで。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

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

  • ただいまの回答率 90.77%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • JavaScript

    15343questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • Monaca

    944questions

    「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

  • Cordova

    408questions

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