Starting Android Programming: Android Studio Run Configuration Error

androidprog.jpg

Gotta this error message from Android Studio when started android programming for the first time.

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileDebugJavaWithJavac'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:103) at org.gradle.api.internal.

From the solvent start, set proper path of JDK was effective.
I also downloaded other SDK version for each Android version.

 

Other error message.

Edit Configuration: Error Please select Android SDK

I Logged in to Google Account

Installed many SDK versions and Tools from SDK Manager icon on Android Studio.

Right upper icon on Android Studio – Project settings (icon) > change JDK to /usr/lib/jvm/1.8

I guess my case was cause of JVM path.
Perhaps SDK was only latest one, I downloaded even the oldest one.
It expanded to 11.9GB…

Screenshot from 2018-12-05 12-58-07.jpg

Solved this !!!

 

Next execute on my tablet.
http://cg.hatenadiary.jp/entry/2015/01/02/185636

My Ubuntu didn’t recognize my tablet.

installed adb

make sure the tablet’s

developer options > usb debugging on

Use sudo usermod -aG plugdev $LOGNAME to add yourself to the plugdev group about adb command.

cd to ..

masa@em-p:~/Android/Sdk/platform-tools$ ./adb devices
List of devices attached
adb server version (32) doesn’t match this client (40); killing…
* daemon started successfully

Changed cable.
restart tablet and ubuntu resolved this.
Often usb debugging mode is don’t know why..

androidProg2

Advertisements

Jaydle Development Journal:JA(va) Y(outube)D(l)-E(xtended)

I’m going to make post about note of jaydle development.
This is program which enhance youtube-dl command.

First I made prototype in bash.

It can download simultaneously and can download by just search keywords.
E.G

“jaydle -keywords tsunami disasters”

will downloads result videos top 10 automatically.
And I have numbering option from the top search result.
So you can know the order of search result after downloading.

But this shell script needing edit somehow. LoL.

I’m planning to make public journal of Jaydle development. e.g. Implementing SwingWorker, Menu bar, Serialization of the store path, …

So watching me!!!

Windows Administrating: Install OpenJDK 1.8

To begin from the result had to uninstall old Oracle jdk (1.6) to use Openjdk 1.8 because of priority problem I guess. But it made can’t open jar file by double click the file…

So if you will, take responsibillity…

Today I installed Eclipse Oxygen to clean installed Windows 7 on NEC LaVie laptop which I call “dee-jay” because this is for Traktor DJ.

And when lauching Eclipse it said like “Need newer JDK than 1.6”.
So I downloaded the source from here.
https://jdk.java.net/java-se-ri/8

Here I heard “Windows i586” for the first time.
But it was not problem so. Just CPU architecture (guess old).

After downloaded the zip extracted to “Program Files” directory.
And added the path to “Environmental Variables”.
But it kept using 1.6 JDK.
Configuring “JAVA_HOME” environment variable was not effective too.

Finally I uninstalled old “Oracle JDK 1.6” from the “Control Panel” > “Uninstall Softwares”.
This was great. 1.6 jdk was at “System32” directory whereis high priorities.

I used

start — this start programs in the search path.
path — this displays path variable values.
(setx path “%path%; this is useful to set path variable)

commands on Command prompt.

And now fighting to Clone git repository on eclipse LoL.

Programming column: A programming unified viewand

My case fun of programming started from bash script. Was really wanted to accustomed with unix or Linux culture bought tons of unix used books mainly under $10.. lol.

Before that I learned Java but it’s hard to living well with OS ( computing environment). Especially make files, directories, reading, writing, using regular expression and co-operating with environment.

Bash is perfect for co-work with the environments. But not Object Oriented so hard to code maintain and manage.

Once you got through one bash book ( My case O’reilly’s “Learning bash shell” Second edition maybe) u will be interested in Sed & Awk.

Sed is “Stream EDitor” by my memory. This using ed text editor inside might be? Ed is very old text editing program. AT&T Bell Lab’s product. Line orient and matrix(mother) of Vi text editor. It won’t even display whole text. 🤓 Because it’s for printer type display(teletype). In the era no crt display and printed to papers. So this was efficient for paper printer.

Awk is acronym for “Adrian will kome “. 🤕

This is splendid language, Jon Bentley was attracted . Perl’s main influencer..

Python is made by masters of low or middle level languages. There are tons of splendid libraries, functions and programming style guide lines.

The point of the view rom function builder on Java, python or frameworks like angular are built arts by the hackers.

Now they must be loving Arduino or Raspy because that’s EECS “Ying and Yang”.

Compiler knowledge is essential.

 

Almost Unix commands are written in C.
But those are very small programs. Like things between programs and API.
Programming approach history is getting generality as it in mathematical description.
Unix commands are more like organic, C? Lol.
I thought like this when reviewing Grep command usage and bash programming.

To be continued,,,

Eclipse error:Editor does not contain a main type or cannot be resolved to a type

eclipse error.jpeg

 

To begin from the cause and solve method…

serObj=load("jaydle.ser");

This statement causes all errors which eclipse said “cannot be resolved to a type” or something like that error.

It highlighted as red circle X, and the others are red light objects.
It said all of my original objects in the class are “cannot be resolved to a type” or something wrong.

From terminal (command line), I tried to compile and error occurred, it pointed

masa@em-p:~/Public/git/jaydle-project/jaydle-project$ javac src/jaydle/JaydlePrototype.java 
src/jaydle/JaydlePrototype.java:61: error: <identifier> expected
serObj=load("jaydle.ser");

So commented out the line,

all of errors disappeared and Mose came. lol.

 

I tried configure “Java build path” but it wasn’t effective.

Eclipse configuration is hard. And error detective system this case reverse effected….

See you!

Personal Memo: SwingWorker class study note (English)

24, Oct, 2018 Wed

Memo to know how to use “SwingWorker” class

publish() is connected with process()

Publish() is used in doInBackground() and send data chunk to process().

SwingWorker<T,V>
T – Result type
V – Type for intermediate result

In processBuild() which is my own, I could’t invoke publish() method.
publish() is method should used in doInBackground() method..
How it be written to process method which takes arguments in doInBackground()?

Reference site
http://www.javacreed.com/swing-worker-example/

MultiThreading is natural.
Practically Swing suppose to launch several threads.

First post end. To be continued…

Personal Memo: SwingWorker class study note (日本語)

SwingWorkerクラスの使い方

publish() – process()と結びついている

publish()はdoInBackground()の内部で使われるが、process()にデータチャンクを送信する。

SwingWorker<T,V>
T – 結果の型
V – 中間結果の型

processBuildメソッド中で、publish()メソッドが使えない。

publish()はdoInBackground()中で使うメソッド

引数を取る処理をdoInBackground()で行うときどうすればいい?

このサイトを参考にする
http://www.javacreed.com/swing-worker-example/

マルチスレッドで当たり前。
Swingは実質スレッドがいくつかある。

Jaydle開発メモ:JMenuBarの追加、アクションの追加、内部クラスの復習、JFileChooser実装のための知識の整理メモ

とりあえずLibreOffice Writer似とったメモを貼っておく🙃

==========================================================

JMenubarを追加する

frame.setJMenuBar(menubar);//frameはJFrameオブジェクト、munubarはJMenuBarオブジェクト

 簡単 うまくいった

参考サイト

https://www.javadrive.jp/tutorial/jmenu/

・アクションの追加

JMenuItemオブジェクトのメソッド addActionListenerからactionPerformedメソッドを実行する

 内部クラスを使って、メソッドを書く場所は確保した。

  ダウンロードボタンも少し修正した(JFrameActionListenerを実装せずに内部クラスで実装した)Screenshot from 2018-10-23 22-18-21

参考サイト

http://java2008.blog103.fc2.com/blog-entry-43.html

・内部クラスの復習

class ButtonListener implements ActionListener
{

public void actionPerformed(ActionEvent e)

{

strIn=textIn.getText();

if(strIn.length()>13)

dlAudio(strIn);

}

}

・メモ

File、プロセスビルダーの保存ディレクトリ、空白ではエラーが出る

JFileChooserの実装

  • showOpenDialog()showSaveDialog()メソッドと使うのが最も簡単

  • showDialog()も使える

  • 上記のメソッドはそれぞれユーザがどのようにダイアログを終わらせたかを表す整数のステータスコードを返す

  • もし返却された値がAPPROVE_OPTIONならば、ユーザはファイルを選んだ、それはgetSelectedFile()メソッドから得ることができる

オライリーJFCクイックリファレンス(原)より

ダイアログからやったほうがよさげ

P440

JFileChooserはダイアログからできているみたい。だからダイアログをやるといい。

Macみたいにクイックファイルリーダが欲しい。

それにしても、洋ドラの「シリコンバレー」で、リチャード・ヘンドリクスがスティーブ・ジョブズだの、スティーブ・ウォズニアックだの言っていた。Youtubeで検索してこの動画を見ていた。
”Creativity”というもんが伝わった。

jarコマンドによる実行可能Jarの作成

 

 

jar

オプション

c JARファイルの作成
f ファイル名の決定
v 内容のリストをverboseモードで
m   マニフェストファイルから値と名前を特定する
-C はfileオペランドで指定されたファイルを処理する際にディレクトリが一時的に変更される

 

参考
https://docs.oracle.com/javase/jp/8/docs/technotes/tools/unix/jar.html
https://docs.oracle.com/javase/jp/8/docs/technotes/guides/jar/jar.html

 

この時のディレクトリ・ファイル構成

~/Desktop/git/masa-examplesがソースのルートディレクトリ
     applications - JaydlePrototype01.java がメインメソッドを含むクラス
     practice - IOMethods.java  がメインクラスで使った依存するクラス

 

まず~/Desktop/git/にJaydleBuildディレクトリを作成
~/Desktop/git/masa-examplesから以下のコマンドを実行

 

javac -d ../JaydleBuild/ applications/JaydlePrototype01.java 
javac -d ../JaydleBuild/ practice/IOMethods.java

 

これでJaydleBuildディレクトリにクラスファイルができた。

 

masa@em-p:~/Desktop/git/JaydleBuildTest$ tree
.
├── applications
│   └── JaydlePrototype01.class
└── practice
    └── IOMethods.class

2 directories, 2 files

のように、

パッケージのディレクトリが作成されている。

 

次に簡単なマニフェストファイルを同ディレクトリに作成

Manifest-Version: 1.0
Main-Class: applications.JaydlePrototype01

 

そして、さっき作ったクラスファイルとマニフェストファイルをjarコマンドでまとめる。

masa@em-p:~/Desktop/git/JaydleBuildTest$ jar cmf Manifest.txt JaydleJarTest.jar ../masa-examples/

失敗。間違ったJARができた。

 

masa@em-p:~/Desktop/git/JaydleBuildTest$ jar cmf Manifest.txt JaydleJarTest.jar .

これでちゃんと作れた。

Screenshot from 2018-10-21 22-56-14

参考
jar コマンドで実行可能な JAR ファイルを作成する | まくまく Java ノート
http://maku77.github.io/java/jar/executable-jar.html

 

YoutubeのMVの音声を抽出してMP3として保存できます。たぶんLinux環境だと動きます。
https://github.com/iamaturtle113/Jaydle

WindowsとMacでは試してないです。Macなら動くかも?Windowsはターミナルのコマンドがちょっと厳しいか。

注 Youtube-dlコマンドがターミナルから起動できることが条件です。

 

Learning About “ActionPerformed” Method And Around “Actions” In JAVA Swing

JFCinanutshellActionListenerインターフェースとactionPerformedメソッドの実行あたりの事柄を整理したいと考えていて、中古で買った洋書を引っ張り出して来て、訳してみました。これはjava.awt.eventに属するみたい。

javax.swing.Action interface

David Flanagan著
JAVA FOUNDATION CLASSES IN A NUTSHELL, A Desktop Quick Reference (O’reilly) 1999, First Edition より

Chapter 3 – Swing Programming Topics – Actions (P26)

JFCtext

GUIソフトはいろんな方法で一つのオペレーションをユーザーにinvoke(呼び出す)ことを許す。
例えば、ユーザーはメニューからでもツールバーからでもファイルをセーブできるだろうし。捜査の結果は極めて同じ。二つの違うインターフェースを介してユーザーに与えられているのだ。

Swingはそのようなオペレーションに関する情報をencapsulate(カプセル化)する単純でパワフルなインターフェースだ。ActionインターフェースはActionListenerインターフェースをextend(継承)するだからActionインターフェースはactionPerformed()メソッドを含む。要求されたアクションを実際に実行するために実装するメソッドはこれである。それぞれのActionオブジェクトはそのアクションに対して追加的な情報を提供する任意の名前/値ペアを持つ。その値は大体以下を含む:そのオペレーションを名付ける短い文字列、グラフィックにそのアクションを表す一つのイメージ、そしてアクションのためのtooltipツールチップ(ふきだし)で使うのに適したより長い文の文字列。加えて、それぞれのActionオブジェクトはひとつのenabledプロパティとenable利用する、disable利用しないということを認可するsetEnabled()メソッドを持つ。(もしあそこでどの文も選択されてないならば、例えば、”切り取り”アクションは通常disableである。)

あなたはひとつのアクションオブジェクトを直接JMenuやJToolBarに追加することができる。あなたがこれをするとき、そのコンポーネントは自動的にそのアクションを表すためのJMenuItemかJButtonを作る、それはそのアクションの捜査をユーザーに対して可能にしそのアクションのテキスト的な描写とグラフィカルなイメージを適切に表示する。

To be continued ..