Thanks! On Friday, July 2, 2021 at 9:07:53 AM UTC-4 Steve Hannah wrote:
> Looks like there is a bug right now in the maven plugin regarding where it > generates the IOS native interfaces. > > It seems to be generating them in src/main/objectivec (i.e. in the "src" > directory of the root project). They should be generated in > ios/src/main/objectivec. (i.e. inside the ios submodule). > If seems to be doing the same thing with the "javascript" native files. > > Move the contents of your src/main/objectivec directory into > ios/src/main/objectivec, and it should fix your issue. > > Steve > > On Thu, Jul 1, 2021 at 8:20 PM Shai Almog <[email protected]> wrote: > >> They don't have the right name. I'm checking. >> >> On Thursday, July 1, 2021 at 7:14:31 AM UTC+3 [email protected] wrote: >> >>> The files appear to be here: >>> >>> src/main/objectivec/com_symdesign_shoppinggenie_MyNativeImpl.h >>> src/main/objectivec/com_symdesign_shoppinggenie_MyNativeImpl.m >>> >>> On Wednesday, June 30, 2021 at 10:05:05 PM UTC-4 Shai Almog wrote: >>> >>>> In iOS it generates >>>> native_com_symdesign_shoppinggenie_MyNativeImplCodenameOne.m >>>> and native_com_symdesign_shoppinggenie_MyNativeImplCodenameOne.h >>>> Which you need to edit. >>>> >>>> For some reason it seems >>>> native_com_symdesign_shoppinggenie_MyNativeImplCodenameOne.h >>>> is missing. Do you have any idea why? >>>> >>>> On Wednesday, June 30, 2021 at 10:14:28 PM UTC+3 [email protected] >>>> wrote: >>>> >>>>> I deleted the files and it did seem to compile and run on an android >>>>> device but I can't do a build for the iphone. >>>>> >>>>> When I did the "genereate native interfaces" it didn't seem to create >>>>> a "MyNativeImpl" file for the iphone and it generates an error file which >>>>> I've attached. >>>>> >>>>> >>>>> On Monday, June 28, 2021 at 9:44:15 PM UTC-4 Shai Almog wrote: >>>>> >>>>>> By default we don't overwrite files that are already there. I suggest >>>>>> deleting and regenerating. >>>>>> >>>>>> On Monday, June 28, 2021 at 5:56:58 PM UTC+3 [email protected] wrote: >>>>>> >>>>>>> The file MyNative.java I created. I assume it was used to create the >>>>>>> MyNativeImpl.java. I see that file is in three places: >>>>>>> >>>>>>> android/target/classes/com/symdesign/shoppinggenie/MyNativeImpl.java >>>>>>> android/src/main/java/com/symdesign/shoppinggenie/MyNativeImpl.java >>>>>>> javase/src/main/java/com/symdesign/shoppinggenie/MyNativeImpl.java >>>>>>> >>>>>>> when I do "generate native interfaces" only the last one is updated. >>>>>>> Should the other two be there ? They are about 3 weeks old. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Sunday, June 27, 2021 at 9:43:20 PM UTC-4 Shai Almog wrote: >>>>>>> >>>>>>>> Not common. Under the android hierarchy you should have a file with >>>>>>>> the name MyNativeImpl.java >>>>>>>> >>>>>>>> On Sunday, June 27, 2021 at 6:23:28 AM UTC+3 [email protected] >>>>>>>> wrote: >>>>>>>> >>>>>>>>> I'm not quite sure what you mean by the "Android native" file. The >>>>>>>>> file with my NativeInterface interface code is in >>>>>>>>> "common/src/main/java/com/symdesigns/shoppinggenie/MyNative.java. >>>>>>>>> The cn1.pluging.version is 7.0.26 . >>>>>>>>> >>>>>>>>> On Saturday, June 26, 2021 at 9:47:06 PM UTC-4 Shai Almog wrote: >>>>>>>>> >>>>>>>>>> Just the Android version is enough. If the Android native file >>>>>>>>>> there? >>>>>>>>>> Under which directory from project root? >>>>>>>>>> >>>>>>>>>> What's the cn1.plugin.version in the pom.xml? >>>>>>>>>> On Sunday, June 27, 2021 at 1:21:03 AM UTC+3 [email protected] >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Do you need to add native code for all of the native platforms? >>>>>>>>>>> At the moment I only need it for android. I did go through the >>>>>>>>>>> video >>>>>>>>>>> tutorial. >>>>>>>>>>> >>>>>>>>>>> I didn't include the error file from the cloud build because it >>>>>>>>>>> was so long but nevertheless I've attached it below. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Wednesday, June 23, 2021 at 9:50:50 PM UTC-4 Shai Almog wrote: >>>>>>>>>>> >>>>>>>>>>>> Where's the rest of the error log? >>>>>>>>>>>> Also you didn't implement the native code for each of the >>>>>>>>>>>> native platforms e.g. Android would have its own impl file and so >>>>>>>>>>>> would iOS. >>>>>>>>>>>> Did you look at the How Do I video tutorial for native >>>>>>>>>>>> interfaces? It's pre-maven but should cover all of this. >>>>>>>>>>>> >>>>>>>>>>>> On Thursday, June 24, 2021 at 1:19:17 AM UTC+3 >>>>>>>>>>>> [email protected] wrote: >>>>>>>>>>>> >>>>>>>>>>>>> I forgot to add the code used to test it: >>>>>>>>>>>>> >>>>>>>>>>>>> if(cn != null && cn.isSupported()) { >>>>>>>>>>>>> rv = cn.doInNative("string"); >>>>>>>>>>>>> Log.p(rv); >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> which returns "Dummy" as expected. >>>>>>>>>>>>> ------------------- >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Wednesday, June 23, 2021 at 6:15:12 PM UTC-4 Dennis Rogers >>>>>>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> I'm at a loss in trying to do a native interface. I created >>>>>>>>>>>>>> the class "MyNative" >>>>>>>>>>>>>> >>>>>>>>>>>>>> package com.symdesign.myapp; >>>>>>>>>>>>>> >>>>>>>>>>>>>> import com.codename1.system.NativeInterface; >>>>>>>>>>>>>> >>>>>>>>>>>>>> public interface MyNative extends NativeInterface { >>>>>>>>>>>>>> public String doInNative(String hi); >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> Then I ran the tool "create native interfaces" which created >>>>>>>>>>>>>> the file "MyNativeImpl.java" in the javase folder which >>>>>>>>>>>>>> I modified to: >>>>>>>>>>>>>> >>>>>>>>>>>>>> package com.symdesign.myapp; >>>>>>>>>>>>>> >>>>>>>>>>>>>> public class MyNativeImpl implements >>>>>>>>>>>>>> com.symdesign.shoppinggenie.MyNative{ >>>>>>>>>>>>>> public String doInNative(String param) { >>>>>>>>>>>>>> return "Dummy"; >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> public boolean isSupported() { >>>>>>>>>>>>>> return true; >>>>>>>>>>>>>> } >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> If I run this in the simulator it seems to work ok, but when >>>>>>>>>>>>>> I compile it to the cloud I get an error file with the error at >>>>>>>>>>>>>> the top: >>>>>>>>>>>>>> >>>>>>>>>>>>>> Found hyp.beamId >>>>>>>>>>>>>> Tried to start hyperlog but failed: Failed to start hyperlog: >>>>>>>>>>>>>> Cannot run program "hyp": error=2, No such file or directory >>>>>>>>>>>>>> User-level: 9000 >>>>>>>>>>>>>> Request Args: >>>>>>>>>>>>>> ----------------- >>>>>>>>>>>>>> build.incSources=1 >>>>>>>>>>>>>> hyp.beamId=9cfefcf3-f2c3-467c-b459-83c8c6dc3181 >>>>>>>>>>>>>> ios.includePush=true >>>>>>>>>>>>>> java.version=8 >>>>>>>>>>>>>> maven.codenameone-maven-plugin=7.0.26 >>>>>>>>>>>>>> ios.newStorageLocation=true >>>>>>>>>>>>>> maven.codenameone-core.version=7.0.26 >>>>>>>>>>>>>> android.release=false >>>>>>>>>>>>>> android.debug=true >>>>>>>>>>>>>> ------------------- >>>>>>>>>>>>>> . >>>>>>>>>>>>>> . >>>>>>>>>>>>>> On Wednesday, June 16, 2021 at 12:18:48 PM UTC-4 Dennis >>>>>>>>>>>>>> Rogers wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thanks, but that didn't seem to help. I don't get any errors >>>>>>>>>>>>>>> when building the app. I get these errors when trying to load >>>>>>>>>>>>>>> it onto the >>>>>>>>>>>>>>> phone: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> $ adb install -i ShoppingGenie-debug.apk >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Performing Streamed Install >>>>>>>>>>>>>>> adb: failed to install ShoppingGenie-debug.apk: Error: >>>>>>>>>>>>>>> Unable to open file: 8370465 >>>>>>>>>>>>>>> Consider using a file under /data/local/tmp/ >>>>>>>>>>>>>>> Error: Can't open file: 8370465 >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Exception occurred while executing: >>>>>>>>>>>>>>> java.lang.IllegalArgumentException: Error: Can't open file: >>>>>>>>>>>>>>> 8370465 >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> com.android.server.pm.PackageManagerShellCommand.setParamsSize(PackageManagerShellCommand.java:461) >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:1060) >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:169) >>>>>>>>>>>>>>> at android.os.ShellCommand.exec(ShellCommand.java:104) >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:21745) >>>>>>>>>>>>>>> at android.os.Binder.shellCommand(Binder.java:881) >>>>>>>>>>>>>>> at android.os.Binder.onTransact(Binder.java:765) >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4860) >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4015) >>>>>>>>>>>>>>> at android.os.Binder.execTransactInternal(Binder.java:1021) >>>>>>>>>>>>>>> at android.os.Binder.execTransact(Binder.java:994) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Wednesday, June 16, 2021 at 8:02:59 AM UTC-4 Steve Hannah >>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Add the following to the dependences section of your >>>>>>>>>>>>>>>> javase/pom.xml file: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> <dependency> >>>>>>>>>>>>>>>> <groupId>com.codenameone</groupId> >>>>>>>>>>>>>>>> <artifactId>codenameone-core</artifactId> >>>>>>>>>>>>>>>> <scope>provided</scope> >>>>>>>>>>>>>>>> </dependency> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> That should fix the issue. (Mind you you haven't shared any >>>>>>>>>>>>>>>> error messages so it's hard to say what your specific problem >>>>>>>>>>>>>>>> is). >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Steve >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Tue, Jun 15, 2021 at 9:30 PM Dennis Rogers < >>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Since I added the generated the native interface I can no >>>>>>>>>>>>>>>>> longer do cloud builds. Is there a way I can remove the >>>>>>>>>>>>>>>>> native interface I >>>>>>>>>>>>>>>>> created for the moment? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Monday, June 14, 2021 at 10:09:56 PM UTC-4 Shai Almog >>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> That sounds like a bug in the maven project. Let me check. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Tuesday, June 15, 2021 at 12:00:09 AM UTC+3 >>>>>>>>>>>>>>>>>> [email protected] wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Sorry but I'm a little confused. I created a file, >>>>>>>>>>>>>>>>>>> MyNative.java, in the common folder along with my other >>>>>>>>>>>>>>>>>>> code: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> package com.symdesign.shoppinggenie; >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> import com.codename1.system.NativeInterface; >>>>>>>>>>>>>>>>>>> public interface MyNative extends NativeInterface { >>>>>>>>>>>>>>>>>>> String helloWorld(String hi); >>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> When I run "Generate Native Interfaces" I get the error >>>>>>>>>>>>>>>>>>> "cannot access com.codename1.system.NativeInterface" but >>>>>>>>>>>>>>>>>>> nevertheless >>>>>>>>>>>>>>>>>>> it creates a file in >>>>>>>>>>>>>>>>>>> MyProject/src/main/java/com.symdesign/myproject/ called >>>>>>>>>>>>>>>>>>> MyNativeImpl.java >>>>>>>>>>>>>>>>>>> which looks like the advertised stub. (Is it in this file >>>>>>>>>>>>>>>>>>> that I should put >>>>>>>>>>>>>>>>>>> my native code? ) >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> On Sunday, June 13, 2021 at 9:37:18 PM UTC-4 Shai Almog >>>>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> On which file? >>>>>>>>>>>>>>>>>>>> notice that the native side shouldn't include the >>>>>>>>>>>>>>>>>>>> native interface, it should only be in common. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> On Monday, June 14, 2021 at 1:08:30 AM UTC+3 >>>>>>>>>>>>>>>>>>>> [email protected] wrote: >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> I generated the native interface but when I try to >>>>>>>>>>>>>>>>>>>>> build it, it says it can't find >>>>>>>>>>>>>>>>>>>>> com.codename1.system.NativeInterface. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> On Saturday, June 12, 2021 at 9:41:08 PM UTC-4 Shai >>>>>>>>>>>>>>>>>>>>> Almog wrote: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> The plugin is only applicable to Ant projects not to >>>>>>>>>>>>>>>>>>>>>> maven projects. >>>>>>>>>>>>>>>>>>>>>> For maven Generate Native Interfaces is one of the >>>>>>>>>>>>>>>>>>>>>> run configurations. >>>>>>>>>>>>>>>>>>>>>> On Sunday, June 13, 2021 at 12:01:09 AM UTC+3 >>>>>>>>>>>>>>>>>>>>>> [email protected] wrote: >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> I'm trying to create a native interface to access >>>>>>>>>>>>>>>>>>>>>>> android's SpeechRecognitionHelper. Following the manual >>>>>>>>>>>>>>>>>>>>>>> I created >>>>>>>>>>>>>>>>>>>>>>> andinterface that extends NativeInterface i.e. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> import com.codename1.system.NativeInterface; >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> public interface MyNative extends NativeInterface { >>>>>>>>>>>>>>>>>>>>>>> String getSpeech(String hi); >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> The manual then says I can generate initial native >>>>>>>>>>>>>>>>>>>>>>> code by right clicking on the interface and selecting >>>>>>>>>>>>>>>>>>>>>>> "Generate Native >>>>>>>>>>>>>>>>>>>>>>> Access" . This option doesn't seem to be available in >>>>>>>>>>>>>>>>>>>>>>> my setup and I don't >>>>>>>>>>>>>>>>>>>>>>> know where to go from here. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> -Dennis >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> You received this message because you are subscribed to >>>>>>>>>>>>>>>>> the Google Groups "CodenameOne Discussions" group. >>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails >>>>>>>>>>>>>>>>> from it, send an email to >>>>>>>>>>>>>>>>> [email protected]. >>>>>>>>>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/codenameone-discussions/5676afcc-c439-4018-a258-573ffc9fb6f6n%40googlegroups.com >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/codenameone-discussions/5676afcc-c439-4018-a258-573ffc9fb6f6n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>>>>>>>>>> . >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>> Steve Hannah >>>>>>>>>>>>>>>> Software Developer >>>>>>>>>>>>>>>> Codename One >>>>>>>>>>>>>>>> http://www.codenameone.com >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >> You received this message because you are subscribed to the Google Groups >> "CodenameOne Discussions" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/codenameone-discussions/1bc03a67-db28-4c4e-9296-007329023258n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/codenameone-discussions/1bc03a67-db28-4c4e-9296-007329023258n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > > > -- > Steve Hannah > Software Developer > Codename One > http://www.codenameone.com > -- You received this message because you are subscribed to the Google Groups "CodenameOne Discussions" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/codenameone-discussions/de3b05d1-7f40-45bd-ba71-c20a3fd36472n%40googlegroups.com.
