Other B4A v4.00 has been released!

wonder

Expert
Licensed User
@wonder

Sure you can install B4A V4.0 in another folder and use several versions without any problem.
I always save a new version in a new folder and keep some 'older' versions. Don't forget to copy the license file to the new folder.
Thanks for the answer Klaus!! I will follow your advice! :)
 

Erel

Administrator
Staff member
Licensed User
Does a CONST take less memory then a Global? Should we worry about changing them? Will this gain us anything?
Currently there is no memory advantage for consts. However it may change in the future.

The two main advantages of const are:
- It is immediately clear for anyone including your self who goes over the code that the value of this variable will never change (thus reducing the complexity).
- The compiler protects you from modifying the variable value by mistake.
 

nw11

Member
Licensed User
After Upgrading to B4A 4.00, SDK 5.0.1 and all new SDK Manager Packagers available, when i launch my App i receive this error :

java.lang.IllegalStateException: The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 4323000 but found 6587000. You must have the following declaration within the <application> element: <meta-data android:name="com.google.android.gms.version" android:value="@Integer/google_play_services_version" />

this is the B4A error log :

** Activity (main) Resume **
** Activity (main) Pause, UserClosed = true **

BroadcastReceiver has been initialized.
** Activity (main) Create, isFirst = true **

java.lang.IllegalStateException: The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 4323000 but found 6587000. You must have the following declaration within the <application> element: <meta-data android:name="com.google.android.gms.version" android:value="@Integer/google_play_services_version" />

at com.google.android.gms.common.GooglePlayServicesUtil.t(Unknown Source)
at com.google.android.gms.common.GooglePlayServicesUtil.isGooglePlayServicesAvailable(Unknown Source)
at com.google.android.gms.internal.y.a(Unknown Source)
at com.google.android.gms.internal.ak.an(Unknown Source)
at com.google.android.gms.internal.ak.a(Unknown Source)
at com.google.android.gms.ads.AdView.loadAd(Unknown Source)
at anywheresoftware.b4a.admobwrapper.AdViewWrapper.LoadAd(AdViewWrapper.java:118)
at TraduzApp.it.main._activity_create(main.java:377)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:175)
at TraduzApp.it.main.afterFirstLayout(main.java:98)
at TraduzApp.it.main.access$100(main.java:16)
at TraduzApp.it.main$WaitForLayout.run(main.java:76)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
java.lang.IllegalStateException: The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 4323000 but found 6587000. You must have the following declaration within the <application> element: <meta-data android:name="com.google.android.gms.version" android:value="@Integer/google_play_services_version" />

this is my manifest file :

AddManifestText(
<uses-sdk android:minSdkVersion="9"/>
<supports-screens android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:anyDensity="true"
android:windowSoftInputMode="adjustPan"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")

'AdMob
AddApplicationText(<meta-data android:name="com.google.android.gms.version" android:value="@Integer/google_play_services_version"/><activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>)
'End of AdMob

this is my additionalRes declaration line

#AdditionalRes: C:\Program Files\Android\android-sdk\extras\google\google_play_services\libproject\google-play-services_lib\res, com.google.android.gms


the Admob Lib version is 2.00


nb: i have noted that the file : google-play-services.jar in

C:\Program Files\Android\android-sdk\extras\google\google_play_services\libproject\google-play-services_lib\libs

was updated to new version of 11.12.2014

Please let me know if i have to change something in my code that was perfectly working before the updates.

thank you in advance

F
 

Stefan Bosch

New Member
Licensed User
B4A is a great tool to develop apps (I'm an old fashioned guy and still call them "programs" ;)) for Android devices.
I used many versions of Basic in the last 30+ years, VB.net beeing the most recent and B4A got me started with my first Android-apps right away.

I like using B4A Bridge Plus. Does it still work with B4A 4.0? Or do you recomend using the "normal" bridge?
 
Top