Please see robovm.com for more information.
robovm / robovm-samples Goto Github PK
View Code? Open in Web Editor NEWRoboVM sample projects
License: Apache License 2.0
RoboVM sample projects
License: Apache License 2.0
Please see robovm.com for more information.
HelloWorld-console
which just prints out Hello world!!! to the console.
This is not how we format methods:
public void viewDidLoad () {
Should have no space after method name.
Hi robovm,
When i run QuickContacts app, i got an error
java.lang.NullPointerException
at java.io.File.fixSlashes(File.java)
at java.io.File.(File.java)
at com.bgate.testradio.QuickContactsViewController.accessGrantedForAddressBook(QuickContactsViewController.java)
at com.bgate.testradio.QuickContactsViewController.checkAddressBookAccess(QuickContactsViewController.java)
at com.bgate.testradio.QuickContactsViewController.(QuickContactsViewController.java)
at com.bgate.testradio.QuickContacts.didFinishLaunching(QuickContacts.java)
at org.robovm.apple.uikit.UIApplicationDelegate$ObjCProxy.$cb$application$didFinishLaunchingWithOptions$(Unknown Source)
at org.robovm.apple.uikit.UIApplication.main(Native Method)
at org.robovm.apple.uikit.UIApplication.main(UIApplication.java)
at com.bgate.testradio.QuickContacts.main(QuickContacts.java)
It's error when run this method
@SuppressWarnings("unchecked")
private void accessGrantedForAddressBook () {
// Load data from the plist file
String plist = NSBundle.getMainBundle().findResourcePath("Menu", "plist");
menuArray = (NSArray<NSDictionary<NSString, NSString>>)NSArray.read(new File(plist));
getTableView().reloadData();
}
Please help me to fix this !
Importing ContractR into Eclipse via the parent pom currently doesn't work.
It seems there's a large demand on knowing how to handle notifications correctly. It would be great if we could create a sample that demonstrates this (perhaps there is already an apple sample?).
I imported the different samples from GitHub but see the following error in the console.
2014-08-31 17:21:42.637 UICatalog[1568:70b] Application windows are expected to have a root view controller at the end of application launch.
Reported here in SO: http://stackoverflow.com/questions/23981539/robovm-example-code-application-windows-are-expected-to-have-a-root-view-contro
The CurentAddress sample fails to resolve the country code on startup, rendering the location service non-functional.
2014-09-25 09:51:23.497 CurrentAddress[365:89388] Could not determine current country code: Error Domain=GEOErrorDomain Code=-2 "The operation couldn’t be completed. (GEOErrorDomain error -2.)"
Tested on an iPad 3, 32-bit latest iOS 8.0 build.
Related to #23.
1.1.0 is now available. POMs and build.gradle
files should updated. BTW, maybe we should have a file in the root of the repo with the RoboVM version used by all samples. Can we get both Maven and Gradle to read this file? Or at least have a central place for specifying this for Gradle. It's a pain to update all build.gradle
files to update this now. For Maven we just update the parent POM.
Need to add the RoboVM nature and use the classpath container of the plugin instead of runtime libs specified in the build file.
Can we prevent the robovm-rt
and robovm-cocoatouch
dependencies to show up in the Maven Dependencies
classpath container in Eclipse when importing as a maven project if we enclose these dependencies in a profile which is inactive when M2Eclipse (m2e.version
) is detected?
<profiles>
<profile>
<id>not-eclipse</id>
<activation>
<property>
<name>!m2e.version</name>
</property>
</activation>
<dependencies>
<dependency>
<groupId>org.robovm</groupId>
<artifactId>robovm-rt</artifactId>
</dependency>
<dependency>
<groupId>org.robovm</groupId>
<artifactId>robovm-cocoatouch</artifactId>
</dependency>
</dependencies>
</profile>
</profiles>
Thank for the recent update Niklas.
Although I well know Java & Eclipse, I'm actually new to the Mac. So there are a few things that you can add to the instructions to help developers:
Reflect getter/setter adjustments in the RoboVM library.
The following samples need to be updated with storyboard:
The UIPageViewControllerOptions constructor is protected.
Importing ContractR and have all separate projects working would be nice:
Currently I managed to get the iOS part to work, but the Android app complains about unsupported gradle version 0.something.
Tried with IntelliJ CE 14.
SNAPSHOTS cannot be validated to work with every example. In fact there were compile errors that came due updated APIs and even if there would be a CI that validates compilation, there could be still subtile runtime errors related to the nature of a SNAPSHOT.
How about not using SNAPSHOTS but referring to released & fixed versions instead?
Do for all samples. It's too easy to forget about a @IBOutlet
annotated setter.
When map is moved the app crashes sometimes in method PhotoMapViewController.updateVisibleAnnotations().
Some don't work yet because of LazyGlobalValue usage.
Should mention google
I was trying to compile the sample in Eclipse using the latest plug-in but I'm getting several compilation errors. It looks like there is a incompatibility between the library bundled in the plug-in, and what is expected by the sample. I understand that this is under development, but can you please at least put instructions on what should be done to get the samples running?
./gradlew launchIPhoneSimulator --stacktrace
:launchIPhoneSimulator FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':launchIPhoneSimulator'.
> No @Marshaler found for parameter 6 of @Callback method <org.robovm.apple.uikit.UIApplicationDelegate$ObjCProxy: boolean $cb$application$openURL$sourceApplication$annotation$(org.robovm.apple.uikit.UIApplicationDelegate,org.robovm.objc.Selector,org.robovm.apple.uikit.UIApplication,org.robovm.apple.foundation.NSURL,java.lang.String,org.robovm.apple.foundation.NSPropertyList)>
* Try:
Run with --info or --debug option to get more log output.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':launchIPhoneSimulator'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:296)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:86)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:148)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:105)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:85)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:81)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:39)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:29)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:30)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:56)
Caused by: java.lang.IllegalArgumentException: No @Marshaler found for parameter 6 of @Callback method <org.robovm.apple.uikit.UIApplicationDelegate$ObjCProxy: boolean $cb$application$openURL$sourceApplication$annotation$(org.robovm.apple.uikit.UIApplicationDelegate,org.robovm.objc.Selector,org.robovm.apple.uikit.UIApplication,org.robovm.apple.foundation.NSURL,java.lang.String,org.robovm.apple.foundation.NSPropertyList)>
at org.robovm.compiler.MarshalerLookup.findMarshalerMethod(MarshalerLookup.java:169)
at org.robovm.compiler.BroMethodCompiler.getParameterType(BroMethodCompiler.java:491)
at org.robovm.compiler.BroMethodCompiler.getBridgeOrCallbackFunctionType(BroMethodCompiler.java:512)
at org.robovm.compiler.BroMethodCompiler.getCallbackFunctionType(BroMethodCompiler.java:504)
at org.robovm.compiler.CallbackMethodCompiler.callback(CallbackMethodCompiler.java:75)
at org.robovm.compiler.CallbackMethodCompiler.compileCallback(CallbackMethodCompiler.java:100)
at org.robovm.compiler.CallbackMethodCompiler.doCompile(CallbackMethodCompiler.java:71)
at org.robovm.compiler.AbstractMethodCompiler.compile(AbstractMethodCompiler.java:73)
at org.robovm.compiler.ClassCompiler.callbackMethod(ClassCompiler.java:1139)
at org.robovm.compiler.ClassCompiler.compile(ClassCompiler.java:620)
at org.robovm.compiler.ClassCompiler.compile(ClassCompiler.java:276)
at org.robovm.compiler.AppCompiler.compile(AppCompiler.java:223)
at org.robovm.compiler.AppCompiler.compile(AppCompiler.java:273)
at org.robovm.compiler.AppCompiler.compile(AppCompiler.java:316)
at org.robovm.gradle.tasks.AbstractRoboVMTask.build(AbstractRoboVMTask.java:206)
at org.robovm.gradle.tasks.AbstractRoboVMTask.build(AbstractRoboVMTask.java:77)
at org.robovm.gradle.tasks.AbstractIOSSimulatorTask.launch(AbstractIOSSimulatorTask.java:35)
at org.robovm.gradle.tasks.IPhoneSimulatorTask.invoke(IPhoneSimulatorTask.java:28)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:218)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:200)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:570)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:553)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 47 more
BUILD FAILED
Total time: 8.186 secs
The repository contain Eclipse project meta-data. I’d suggest to add IntelliJ IDEA project meta-data as well which can be completely stored inside the .idea folder at the root level. For the case when the POM is updated and IntelliJ’s files are not, IntelliJ would auto-update the files itself once it knows the structure of the overall project.
When I use the regions sample app,
place a few regions, and drag the map around,
the app starts crashing, and then crashes on startup.
No amount of killing the app will fix it, until you delete it's data.
Moved from: robovm/robovm#768
We add them once the next RoboVM 1.2 is out.
These include:
To reproduce:
Start Tabster sample app:
go to "tab 2" pick any text - either Cherry Lake or Lake Don Pedro
you will get a white screen which you cannot get out of
Moved from robovm/robovm#767
Hi,
I'm trying to run Adventure sample. When i do it with ''./gradlew launchIPadSimulator --stacktrace"
I got warnings "Texture Atlas '(Environment)' cannot be found" on every texture and then "java.lang.IndexOutOfBoundsException: index = 0, size = 0" which is understandable because of empty texture array. Do You know how to fix it?
SKScene scene = new SKScene();
SKPhysicsWorld physicsWorld = scene.getPhysicsWorld();
physicsWorld.setGravity(new CGVector(0.0, 0.0));
It fails at setGravity:
java.lang.UnsatisfiedLinkError: @Bridge method org/robovm/apple/spritekit/SKPhysicsWorld.$m$setGravity$(Lorg/robovm/apple/spritekit/SKPhysicsWorld;Lorg/robovm/objc/Selector;Lorg/robovm/apple/coregraphics/CGVector;)V not bound
With Dominik's latest changes to the bindings there are quite a few compilation errors in the different samples. It would be awesome if you could fix those. Thanks!
There have been several changes. We also need to fix a few graphical glitches.
We currently have a non-functional version of ContractR FX that lacks build files. We need to port this over to JavaFXPorts.
QuickContacts app crashes on iOS 64-bit 8.0 device when clicking on Edit Unknown Contact
9/24/14 1:55:04 PM: [ERROR] AppLauncher failed with an exception:
9/24/14 1:55:04 PM: [ERROR] java.lang.RuntimeException: Unexpected response from debugserver: $X00;description:5465726d696e617465642064756520746f207369676e616c2036;#00
9/24/14 1:55:04 PM: [ERROR] at org.robovm.libimobiledevice.util.AppLauncher.pipeStdOut(AppLauncher.java:737)
9/24/14 1:55:04 PM: [ERROR] at org.robovm.libimobiledevice.util.AppLauncher.launchInternal(AppLauncher.java:667)
9/24/14 1:55:04 PM: [ERROR] at org.robovm.libimobiledevice.util.AppLauncher.launch(AppLauncher.java:928)
9/24/14 1:55:04 PM: [ERROR] at org.robovm.compiler.target.ios.AppLauncherProcess$1.run(AppLauncherProcess.java:67)
Same on 32-bit iOS 7.1
2014-09-24 13:57:37.650 QuickContacts[334:60b] -[__NSCFType length]: unrecognized selector sent to instance 0x17659c10
2014-09-24 13:57:37.655 QuickContacts[334:60b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFType length]: unrecognized selector sent to instance 0x17659c10'
*** First throw call stack:
(0x2e774f83 0x3925bccf 0x2e778917 0x2e777203 0x2e6c6768 0x2e74d685 0x2e6cf083 0x2dda5c5b 0x2dda4ee9 0x2ddd0617 0x2dda4b1d 0x2ddaa389 0x3106747b 0x310655eb 0x31065421 0x3106834d 0x31067f25 0x2ddc8401 0x310d77ab 0x2ddaa20f 0x30fac6df 0x2e6be1fd 0x2e6b7be5 0x30fac865 0x3112243f 0x3103fd63 0x3103fb6d 0x3103fb05 0x30f91d59 0x30c0f62b 0x30c0ae3b 0x30c0accd 0x30c0a6df 0x30c0a4ef 0x30c0421d 0x2e740255 0x2e73dbf9 0x2e73df3b 0x2e6a8ebf 0x2e6a8ca3 0x335a3663 0x30ff514d 0x4c95a5 0x4c8b3b 0x4c8b7b 0x6714f3 0x687543 0x68049f 0x68211b 0x682175 0x67c58b 0x675053 0x17c000)
libc++abi.dylib: terminating with uncaught exception of type NSException
It seems that without calling enqueueBuffer this error doesn't happen but it is necessary to make the audio queue playback the streamed audio.
PhotoAnnotation.setCoordinate when used in UIView.animate should animate the annotation view. But instead the annotation just jumps to the final coordinate.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.