スキップしてメイン コンテンツに移動

投稿

Android Studioのバージョンアップに伴うビルドエラー(Gradle x.x requires Android Gradle plugin x.x.x ...)

Android Studioをバージョンアップすると、バージョンアップ前に作成していたプロジェクトのビルドでエラーが発生することがあります。 これは、Android Studioのバージョンアップの際に、ビルドシステムのGradleもバージョンアップされているからです。 今回は、以下のようなエラーが発生した時の対処方法です。 【エラー】 Gradle x.x requires Android Gradle plugin x.x.x (or newer) but project is using version x.x.x. Please use Android Gradle plugin x.x.x or newer. Fix plugin version and sync project 【対処】 メッセージにあるリンク箇所(Fix plugin version and sync project)をクリックするとAndroid Gradle pluginのクラスパス設定が修正されて、プロジェクトの同期が再実施されます。 Android Gradle pluginのクラスパス設定は、build.gradleのdependenciesに記載されています。 -----     dependencies {         classpath 'com.android.tools.build:gradle:1.3.0'         // NOTE: Do not place your application dependencies here; they belong         // in the individual module build.gradle files     } ----- 上記は、Android Gradle plugin 1.3.0が設定されている例です。
最近の投稿

android.app.Fragmentとandroid.support.v4.app.Fragmentの共存で起こるエラー

今回は、android.app.Fragmentとandroid.support.v4.app.Fragmentの共存で起こるエラーについてです。 例えば、以下のようなソースでエラーとなる場合があります。 [ソース] public void onNavigationDrawerItemSelected(int position) { FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction()    .replace(R.id.container, MyFragment.newInstance(position))    .commit();   } [エラー] replace(int, android.support.v4.app.Fragment) in FragmentTransaction cannot be applied to (int, XXX.MyFragment) これは、getSupportFragmentManager()で取得したFragmentManagerのreplace()メソッドに於いて、android.app.FragmentによるMyFragmentクラスのインスタンスを引数にとることは出来ないというエラーです。 対策として、 この場合、MyFragmentクラスに於けるインポートを import android.app.Fragment; から import android.support.v4.app.Fragment; に変更すれば解決します。

Android Studioのバージョンアップに伴うビルドエラー(Gradle DSL method not found:'runProguard()'...)

Android Studioをバージョンアップすると、バージョンアップ前に作成していたプロジェクトのビルドでエラーが発生することがあります。 これは、Android Studioのバージョンアップの際に、ビルドシステムのGradleもバージョンアップされているからです。 今回は、以下のようなエラーが発生した時の対処方法です。 【エラー】 ■Messages Gradle Sync Gradle DSL method not found:'runProguard()' possible causes: Error:(16,0) ・The project 'プロジェクト名' may be useing a version of Gradle thet does not contain the method. ・The build file may be missing a Gradle plugin. 【対処】 app>build.gradle を以下の通り修正します。 ■修正前     buildTypes {         release {             runProguard false             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'         }     } ■修正後     buildTypes {         release {             minifyEnabled false             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'         }     }

Android Studioのバージョンアップに伴うビルドエラー(If using the gradle wrapper, try editing the distributionUrl...)

Android Studioをバージョンアップすると、バージョンアップ前に作成していたプロジェクトのビルドでエラーが発生することがあります。 これは、Android Studioのバージョンアップの際に、ビルドシステムのGradleもバージョンアップされているからです。 今回は、以下のようなエラーが発生した時の対処方法です。 【エラー】 ■Messages Gradle Sync Failed to sync Gradle project 'プロジェクト名' Gradle version 2.2 is required. Current version is 2.1. If using the gradle wrapper, try editing the distributionUrl in C:\パス\AndroidStudioProjects\プロジェクト名\gradle\wrapper\gradle-2.2-all.zip Error: Please fix the project's Gradle settings. 【対処】 gradle>wrapper>gradle-wrapper.properties を以下の通り修正します。 ■修正前 distributionUrl=https\://services.gradle.org/distributions/gradle-2.1-all.zip ■修正後 distributionUrl=https\://services.gradle.org/distributions/ gradle-2.2-all.zip

Android Studioのバージョンアップに伴うビルドエラー(The project is using an unsupported version...)

Android Studioをバージョンアップすると、バージョンアップ前に作成していたプロジェクトのビルドでエラーが発生することがあります。 これは、Android Studioのバージョンアップの際に、ビルドシステムのGradleもバージョンアップされているからです。 今回は、以下のようなエラーが発生した時の対処方法です。 【エラー】 ■Messages Gradle Sync Failed to sync Gradle project 'プロジェクト名' Error: The project is using an unsupported version of the Android Gradle plug-in(0.13.2). The recommended version is 1.0.1. 【対処】 gbuild.gradleを以下の通り修正します。 ■修正前     dependencies {         classpath 'com.android.tools.build:gradle:0.13.2'         // NOTE: Do not place your application dependencies here; they belong         // in the individual module build.gradle files     } ■修正後     dependencies {         classpath 'com.android.tools.build:gradle: 1.0.1 '         // NOTE: Do not place your application dependencies here; they belong         // in the individual module build.gradle files     }

FragmentとActivityの連携について

WEB上でFragmentについて検索すると、関連する内容がたくさんヒットするのですが、残念なことに、日本語による関連サイトが余りにも少ないのが現状です。 そこで、今回は、今更の感はございますが、Fragmentについて、その中でも特に情報が少ないFragmentとActivityの連携についてまとめてみました。 ■Fragmentから特定のActivityと連携する場合 ①FragmentからActionBarを操作する まず、FragmentクラスのgetActivity()メソッドによって、Fragmentが関連付けられているActivityのインスタンスを取得します。 public final Activity getActivity () -------------------- [Returns] Return the Activity this fragment is currently associated with. -------------------- 次に、ActivityクラスのgetActionBar ()メソッドによって、ActionBarのインスタンスを取得します。 public ActionBar getActionBar () -------------------- [Returns] The Activity's ActionBar, or null if it does not have one. -------------------- 以下のようなメソッドを用意しておくと便利です。 private ActionBar getActionBar() {     return getActivity().getActionBar(); } ActionBarクラスのメソッドで、以下のような操作が出来ます。 ・アプリアイコンをHomeボタンとする。 actionBar.setHomeButtonEnabled(true); ・アプリアイコンの左に戻るアイコンを追加する。 actionBar.setDisplayHomeAsUpEnabled(true); ・タイトル(サブタイトル)を表示する。 actionBar.setDisplayShow

【新作】分数電卓

■シンプルで使いやすい分数電卓です。 分数電卓は、書式通りに入力して結果を表示することが出来ます。 だから、誰にでも簡単に利用することが出来ます。 日常の分数計算にはもちろん、お子様の算数の勉強にもお役立て頂ければ幸いです。 【 Google Play でダウンロードする 】