B4aの概要

alfcen

Well-Known Member
Licensed User
Longtime User
Anywhere Software社が開発したBasic4android(B4A)は、Basic言語でアプリを簡単に開発出来る環境です。
初心者でも経験者でも気楽に利用して頂けます。

Android企画に完全に対応し、BasicコードをネイティブJavaへ変換ので、実行スピードが殆ど変りません。
ランタイムライブラリーなどの負担は一切ありません。B4Aの言語はマイクロソフト社のVisual Basicの文法に近いです。

B4Aの第一歩ガイドはこちらです。

不明な点がございましたらいつでもこのフォーラムにて聞いて頂ければと思っております。

宜しくお願い致します。

レキオ沖縄 (B4Aの2年間の利用者)
 

doraneko

Member
Licensed User
Longtime User
よろしくお願いします。

私はBASIC4PPC(B4P)時代から使っているユーザーです。BASIC4Android(B4A)で職場で使う医療関係のアプリを自作しています。いままでわからないことは、私のつたない英語でこのサイトのフォーラムに質問していましたが、レキオ様が日本語のフォーラムを立ち上げて頂き、感謝しております。B4Aが日本で殆ど流行っていないのが不思議です。探したところでも関連図書を見つけることが出来ませんでした。日経Programmingで取り上げてもらうようメールをしたら、今後検討されるようでした。今後、日本でもB4Aが普及するのを祈っております。
by どらねこ
 

alfcen

Well-Known Member
Licensed User
Longtime User
賛成

ハイサイ、どらねこさん、

全点賛成です。国内で殆ど流行っていないのが確かに不思議です。やはり英語のバリアが高そうですね。日経などの企業さんでも英語力の不足の為遠慮していると思います。
「今後検討します」と言う返事はNOと言う意味です。もったいないですね。

医療関係のアプリは面白そうです!わしは色々な天文関係のアプリを自作しています。

秘密じゃなければ、どらねこさんのお住まいは何県ですか?

by 琉球王国のロバート
 

seck.jp

Member
Licensed User
Longtime User
先日メールにて連絡させて頂いたseck.jpです。B4A標準版を購入しましたがまだインストールしていません。
自宅PCか仕事場のPCのどちらにインストールするか迷っているところです。
何かとご質問させて頂くかと思いますが今後ともよろしくお願い致します。
 

alfcen

Well-Known Member
Licensed User
Longtime User
B4Aのライセンスは、開発者ごとに設定ですので会社のPCにも個人のPCにも両方インストールしても大丈夫です。
 

seck.jp

Member
Licensed User
Longtime User
サンプルプログラムを用意したのですが
USB接続の方法がわかりません、「device not found」
難しいです
 

alfcen

Well-Known Member
Licensed User
Longtime User
コンパイルしようとした時に発生したエラーメッセージでしょうか?
その場合は端末用のUSB接続ドライバーのインストールが必要です。

既にインストールされている場合は、B4AのメニューTools/Run AVD Managerを開いてください。
そしてGoogleのソフトが立ち上がります。その中で少なくてもひとつのバーチュアルデバイスのセットアップが必要です。

端末の接続のためだけですので、PlatformやAPL Levelとしては、どれもいいです。
 

seck.jp

Member
Licensed User
Longtime User
何度もすみません。未だUSB接続で実機にプログラムを転送できていません。
・「端末用のUSB接続ドライバーのインストール」は、できました。
・「B4AのメニューTools/Run AVD Manager」を起動するだけでよいのでしょうか?
 バーチャルデバイスを始動しなくても良いのでしょうか?
 始動しするとエミュレータがゆっくり動き出しますが、これはそのままで良いのでしょうか?
・実機側の開発者設定で重要な要件はないでしょうか?
 「USBデバッグ」モードには設定しています。
※上の設定をいろいろ変えて試行しているのですが、「Release」にてコンパイル終了時に
 「No device found. ・・・・・」のエラーが出ます。

私のしていることで、何か気になる(抜けている)ところがあれば教えてくださいませ。
 

seck.jp

Member
Licensed User
Longtime User
Bluetoothを使用して実機にプログラム転送できました。これで開発の第一歩まで進めそうです。
何かと質問ばかりしてごめんなさい。私が更に習得すればいろいろな事がわかってくるような気がします。
今度は、プログラミングについて質問できるようになれば、と思っています。
今後ともよろしくお願い致します。
 

seck.jp

Member
Licensed User
Longtime User
こんにちは、ちょっとお尋ねします。 B4Aパッケージの説明に
・Standard (標準) 2ヶ月 無料更新
・Enterprise(事業) 2年間 無料更新
とありますが、更新の情報はどこに掲載しているのでしょうか?
よろしくおねがいします
 

alfcen

Well-Known Member
Licensed User
Longtime User
ハイサイ
更新のリリースの時にメーカー(Erel Uziel) からメールのおしらせが届きます。
 

seck.jp

Member
Licensed User
Longtime User
alfcan様、ありがとうございます。
自分、英語がほとんど読めませんので、頼らせて頂いております。
私の思った現在の感じですが、B4AはVBほか従来のBASIC言語とはほど遠い言語環境かと認識しております。
しかしながら、プログラミング-実機でのテストラン-手直しして再実行
のパフォーマンスには目を見張るものがありますのでまだまだ降参はしません。さて

質問_005:文字列の比較をするとエラーになるのを回避したいのですが?
A="12345" b="" の時
if a>B then ....
とすると実行時エラーになります
こんな基本的なことでうまくいかないので少々いらついております
何か解消方はありませんでしょうか?
 

alfcen

Well-Known Member
Licensed User
Longtime User
英語を読めないプログラマーは苦しいと思いますが
僕は忙しくて時間が少ないです。(貧乏暇なし)。

例えば:
B4X:
"abc".CompareTo("da") ' < 0
"abc".CompareTo("Abc") ' > 0
"abc".CompareTo("abca")' < 0

'又は

A="12345" b=""
if a.Length > B.Length then

End If

>こんな基本的なことでうまくいかないので少々いらついております
B4AのコンパイラーがJavaコードを発生しますので制限があります。
 

seck.jp

Member
Licensed User
Longtime User
こんにちは、少々熱くなって発言してしまったようです。教えてもらっているのに申し分ありません。
Basic言語への先入観で、文字列の比較は算術での比較と同じようにできる、と思い込んで作業をしていまして、
エラーの原因を探していたのですが、他ばかり探し最後の最後の最後に「まさか文字列の比較ができないのでは?」と行きつき
へとへとに疲れてしまい、ついブータレてしまいました。
今後は、Basic言語へ先入観を無くして挑んでゆく所存です。
 

alfcen

Well-Known Member
Licensed User
Longtime User
ハイサイ、こんばんは、

私はCommodore 64 BASICから殆どのBASIC言語を利用したことがありますが、
100%同じ構文を持っているBASIC言語を経験したことがないですね。

B4Aのドキュメンテイションは全て英語ですので完全に覚える為には英語力が必要だと思います。

B4Aの構文による次善策を実現出来るのを存じますので、出来れば、諦めないでください。
僕の母語も英語ではありません。

Visual Basicの構文とB4Aの相当構文に関している情報はこちらです:
http://www.b4x.com/android/forum/threads/converting-vb6-to-b4a.9347/

お宅は会社員(社長?)だと思いますが、英語旨く読める同僚がいらっしゃいませんか?

個人の好奇心ですが、どう言うアプリを開発していますか?
 

seck.jp

Member
Licensed User
Longtime User
お気遣いありがとうございます。英語力はないにせよ、ウェブの翻訳と英語ページを交互にみなから奮闘しています。
あとは予測してテスト処理をして動作を確認し私なりのマニュアルを作っています。

私は、単独の自営業ですので従業員はいません、主に企業独自のシステム開発・教育、ほかシステム開発企業のヘルプをしています。
日本で初めてパソコンというものが登場した頃から以降のBASICは殆どやってきております、全て日本仕様のものですが。
ほか、COBOL,FORTRAN,PASCAL,ASM各種,K.LANGAGEなど雑多な業務専門です。

Androidでアプリ開発したいと思ったのは、手軽に所持でき、手軽にアプリのインストール・アンインストールができる
端末(スマホほか)に感激したからです。

現在作成中のアプリは、一般向けではなく企業向けのもので、私の置かれている環境まわりでは受け入れられそうなものです。
進捗は、85%くらいで、何とか今月中にはGoogleStoreにアップできたらと思っています。
アップしたら御連絡します。
初心者が初めてB4Aを使って「ヒーヒー」言いながら開発したアプリなので失敗作になるかもしれませんが、
確実な第一歩だと思っています。
 

seck.jp

Member
Licensed User
Longtime User
こんにちわ
現在作成中のアプリがほとんど完成しました。
現在は、7インチのタブレットで開発を行っているのですが、実用には10インチのほうが良いものです、そこで
10インチのタブレットでインストールしてみたのですが、表示サイズは7インチのままでした、
画面表示サイズの自動調整などの設定はどのようにしたらよろしいのでしょうか?
参考ページがあればありがたいです。(なんとか自分なりに解決しました)

自分のアプリを終了させる方法も知りたいです(解決しました:ExitApplication)
 
Last edited:

seck.jp

Member
Licensed User
Longtime User
こんにちわseck.jpです

画面の比率コントロールに挑戦しようと思っていますが、最初からつまずいているところです
たとえば、私のテスト用実機の解像度は、1280×720 なのですが、そこで Designer を使い
高さ 1280 幅 720 のボタンを設定し、それだけを表示させたところなぜか4分の1くらい
表示されてしまいます。
因みに、Layout Variants は、Other. で Width=720 Height=1280 Scale=1 です。
周囲のそれに関わりそうな設定はひと通りやってみたのですが変わりません。
これは、B4A の独自仕様のなでしょうか? 私の理解不足なのでしょうか?
いつも聞いてばかりで申し訳ありません。

9/27 自分なりに解決してみました、他に良い方法があれば教えてください。 解決方は、seck.jp に記載します
 
Last edited:
Top