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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Android

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

SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

2回答

7710閲覧

AndroidSDKのsdkmanagerを実行するとエラーになる

groggy_egg

総合スコア24

Android

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

SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

1クリップ

投稿2020/05/17 07:28

UbuntuでAndroidSDKをインストールしたいのですが
sdkmanager --list
を実行すると
Warning: Could not create settings
とエラーが表示され実行できません

エラー全文

Warning: Could not create settings java.lang.IllegalArgumentException at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init>(SdkManagerCliSettings.java:428) at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152) at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48) Usage: sdkmanager [--uninstall] [<common args>] [--package_file=<file>] [<packages>...] sdkmanager --update [<common args>] sdkmanager --list [<common args>] sdkmanager --licenses [<common args>] sdkmanager --version With --install (optional), installs or updates packages. By default, the listed packages are installed or (if already installed) updated to the latest version. With --uninstall, uninstall the listed packages. <package> is a sdk-style path (e.g. "build-tools;23.0.0" or "platforms;android-23"). <package-file> is a text file where each line is a sdk-style path of a package to install or uninstall. Multiple --package_file arguments may be specified in combination with explicit paths. With --update, all installed packages are updated to the latest version. With --list, all installed and available packages are printed out. With --licenses, show and offer the option to accept licenses for all available packages that have not already been accepted. With --version, prints the current version of sdkmanager. Common Arguments: --sdk_root=<sdkRootPath>: Use the specified SDK root instead of the SDK containing this tool --channel=<channelId>: Include packages in channels up to <channelId>. Common channels are: 0 (Stable), 1 (Beta), 2 (Dev), and 3 (Canary). --include_obsolete: With --list, show obsolete packages in the package listing. With --update, update obsolete packages as well as non-obsolete. --no_https: Force all connections to use http rather than https. --proxy=<http | socks>: Connect via a proxy of the given type. --proxy_host=<IP or DNS address>: IP or DNS address of the proxy to use. --proxy_port=<port #>: Proxy port to connect to. --verbose: Enable verbose output. * If the env var REPO_OS_OVERRIDE is set to "windows", "macosx", or "linux", packages will be downloaded for that OS.

ここの説明でクイックスタートの説明手順を実行したのですがエラーとなり
ここここ,ここの方法も試したのですが同じエラーになり上手くいきません

詳しい方アドバイスお願いします

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

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

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

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

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

hoshi-takanori

2020/05/17 12:23 編集

たぶん、素直に Android Studio を入れて、試しに簡単なプロジェクトを作って、普通の Android 開発の経験を積むのが一番いいのではないかと。 最近も Android SDK Command Line Tools というのが追加されましたが、Android の開発環境はどんどん変化していて、基本的には Android Studio を中心に考えられているので、Android Studio から更新していればあまり気にする必要はないのですが、Android Studio を入れずに SDK だけ使おうと思うと、変化についていけなかったりするのではないかと推測します。 また、Android の開発者は当然 Android Studio を入れてますので、Android SDK だけの環境は詳しくないことが多いです。Jenkins に SDK だけ入れるにしても、手元の開発マシンには Android Studio の環境があるので、それと比べて確認しながら作業することになります。 おそらく python-for-android を使えば python の知識だけで Android アプリが開発できるとお考えなのではないかと憶測しますが、実際にはむしろ普通の python 開発や Android 開発の知識に加えて、普通は必要のないニッチな知識を要求されることになると思います。
guest

回答2

0

自己解決

ここのAndroidSDKのインストールの手順
sudo apt-get install android-sdk
を実行したら
python-for-android recipes
のコマンドを実行できました。

なんだか腑に落ちないのですが一応解決にしておきます

皆さん回答ありがとうございました。
お騒がせしました。

投稿2020/05/18 01:23

groggy_egg

総合スコア24

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

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

0

オプションとして--sdk_root=<Android SDKのパス>で何かしらのパスを指定する必要があるようです。その指定がないためにIllegalArgumentExceptionを吐いているのだと思います。

(参考)
Android Command line tools sdkmanager always shows: Warning: Could not create settings | stackoverflow

私も試しにAdnroid DevelopersのページでCommand line tools onlyをダウンロードし、それを展開した中にあるsdkmanagerで

text

1sdkmanager --sdk_root=<SDKのパス> --list

のようにしてみたところ、エラーにならず正しくInstalled packagesやAvailable Packagesのリストを取得できました。上記リンク先のページでは環境変数ANDROID_HOMEを介していますが、直接指定でも通るようです。

ただ、この先も質問者様が参考にしたコマンドの手順がそのまま通るかどうかは、そこまで試していないのでわかりません。やはり、Android Studioに同梱されているSDK Managerを用いてSDKを設定するのが最も確実な手段かと思います。

投稿2020/05/17 13:52

keicha_hrs

総合スコア6766

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

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

groggy_egg

2020/05/18 01:18

環境変数の設定(bashrcとbash_plofileに設定しechoで確認)や sdk_rootでの直接指定もしましたがダメでした。 私の環境に問題があるのかもしれませんが 私の知識では特定できそうにないです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問