diff --git a/contrib/mobile/Android/AndroidManifest.xml b/contrib/mobile/Android/AndroidManifest.xml index 022614d098d2dc75fdc019b849750a5c26556608..6c010fac3c5d91c16cb1d238388bb2e4e9bf1ce3 100644 --- a/contrib/mobile/Android/AndroidManifest.xml +++ b/contrib/mobile/Android/AndroidManifest.xml @@ -7,8 +7,7 @@ <uses-feature android:glEsVersion="0x00010000" android:required="true"></uses-feature> <uses-sdk - android:minSdkVersion="14" - android:targetSdkVersion="15" /> + android:minSdkVersion="14" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <application @@ -19,7 +18,7 @@ android:allowBackup="true" > <activity - android:name=".MainActivity" + android:name=".SplashScreen" android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.MAIN" /> @@ -33,6 +32,9 @@ <data android:scheme="file" android:host="*" android:pathPattern=".*\\.pro" android:mimeType="*/*" /> </intent-filter> </activity> + <activity + android:name=".MainActivity" + android:label="@string/title_activity_main" /> </application> </manifest> \ No newline at end of file diff --git a/contrib/mobile/Android/res/layout/splash.xml b/contrib/mobile/Android/res/layout/splash.xml new file mode 100644 index 0000000000000000000000000000000000000000..44c7278d0a4e4ebf71956ab92ce4f4220ed04d5a --- /dev/null +++ b/contrib/mobile/Android/res/layout/splash.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" > + + <ImageView android:id="@+id/splashImage" + android:layout_centerInParent="true" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:contentDescription="@string/app_name" + android:src="@drawable/ic_launcher" /> + <TextView android:id="@+id/splashTitle" + android:layout_below="@id/splashImage" + android:layout_width="fill_parent" + android:gravity="center" + android:layout_height="wrap_content" + android:text="ONELAB for Android" + android:textSize="24dp" + android:textStyle="bold"/> + + + +</RelativeLayout> \ No newline at end of file diff --git a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java index 06ecba2e502a2e55b20c156cabfe136791c76eb0..9b819c69f39691a6823bc9aeb09c018300d5379f 100644 --- a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java +++ b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java @@ -100,7 +100,7 @@ public class MainActivity extends Activity { modelList = new Models(); getModels(); loadNative(); - if(intent.getAction().equals(Intent.ACTION_VIEW)) { + if(intent != null && intent.getAction() != null && intent.getAction().equals(Intent.ACTION_VIEW)) { String tmp = intent.getData().getPath(); gmsh.load(tmp); } diff --git a/contrib/mobile/Android/src/org/geuz/onelab/SplashScreen.java b/contrib/mobile/Android/src/org/geuz/onelab/SplashScreen.java new file mode 100644 index 0000000000000000000000000000000000000000..e45ccf3d849b60bfce46801a3cb2df3dba53de56 --- /dev/null +++ b/contrib/mobile/Android/src/org/geuz/onelab/SplashScreen.java @@ -0,0 +1,39 @@ +package org.geuz.onelab; + +import android.app.Activity; +import android.content.Intent; +import android.os.Handler; +import android.os.Message; + +public class SplashScreen extends Activity{ + private static final int SPLASHTIME = 1000; // duration for the splash screen in milliseconds + + private static final int STOPSPLASH = 0; + private static final int EXITAPP = 1; + + private final Handler handler = new Handler() + { + public void handleMessage(Message msg) { + switch (msg.what) { + case STOPSPLASH: + final Intent intent = new Intent(SplashScreen.this, MainActivity.class); + startActivity(intent); + finish(); + break; + case EXITAPP: + finish(); + break; + default: + break; + } + }; + }; + + protected void onCreate(android.os.Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.splash); + final Message msg = new Message(); + msg.what = STOPSPLASH; + handler.sendMessageDelayed(msg, SPLASHTIME); + }; +}