HTML5 PhonegapベースのAndroidアプリにスプラッシュスクリーンを追加する方法を教えてください。ロード時に5秒間表示するだけです。また、誰でもスプラッシュスクリーンのサイズをアドバイスできます。
PhoneGap Androidアプリケーションにスプラッシュスクリーンを表示するには、splash.png
ファイルをres/drawable-ldpi
、res/drawable-mdpi
、res/drawable-hdpi
、res/drawable-xhdpi
に配置する必要があります。これらのディレクトリは、1インチあたりの低、中、高、および特大のドットを表します。各ディレクトリのsplash.png(ここではファイル名が重要です)のサイズを変更する必要があります。そうしないと、Androidによってサイズが拡大されます。
各画像のサイズは次のとおりです。
次に、メインのJavaクラス(DroidGapを拡張するクラス)で、1行追加して別の行を変更する必要があります。最初に追加:
super.setIntegerProperty("splashscreen", R.drawable.splash);
この行はsuper.onCreate
の下で、super.loadUrl
の前に表示されます。次に、メインページをロードする前にloadUrlメソッドを5秒間停止するように変更する必要があります。次のようになります。
super.loadUrl("file:///Android_asset/www/index.html", 5000);
それはあなたのためにそれを行う必要があります。
私は最近、PhoneGap AndroidでのSplashScreenの動作を更新しました。スプラッシュ画面が表示されている間に、メインアプリがロードされるようになりました。これは、以前のブロッキングスプラッシュスクリーンコールに対する大きな改善です。 私のブログで変更点の詳細を読む 。
Phonegap(Apache Cordova)のドキュメントには、スプラッシュスクリーンに関する十分な詳細と、1つの場所でAndroidとiOSの両方の異なる解像度が記載されています。
http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html
PhonegapアプリAndroidバージョンでは、スプラッシュスクリーンを設定したり、loadUrlを呼び出す前に「読み込み」ダイアログを設定したりすると、Eclipseデバッガーはかんしゃくを投げます。
どちらも、デバイスにインストールされた実際のアプリでは機能しますが、デバッグを中断します。そこで、私はそれらをloadUrlの後ろに置きました。そこでは、彼らは害を及ぼさず、アプリ自体よりもずっと前に表示されます。
public class App extends DroidGap {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///Android_asset/www/index.html",5000);
super.setStringProperty("loadingDialog", "Starting your app...");
super.setIntegerProperty("splashscreen", R.drawable.splash);
...
}...
また、phonegap Androidでこの問題に直面しましたが、解決策が得られました。
super.setIntegerProperty("splashscreen", R.drawable.splash);(find image under drawable folder named splash,so put splash.png under drawable folder)
super.loadUrl("file:///Android_asset/www/index.html",15000);(splash screen will show 15 sec.
public class radiobiafra extends DroidGap
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.setIntegerProperty("splashscreen", R.drawable.splash);
super.loadUrl("file:///Android_asset/www/index.html",15000);
}
}
これはおそらくあなたのニーズを満たすでしょう。関連するすべてのconfig.xml設定、画像、およびスプラッシュスクリーンをカスタマイズし、素敵な直感的なインターフェイスで追加できます。
ファイルをダウンロードして手動でインストールすることをお勧めします。 Webベースのエアインストーラーが機能しないようです。
3.6を超えるCordovaを使用し、Cordovaコマンドラインインターフェイスを使用してアプリを構築すると、config.xml
ファイルからスプラッシュスクリーンを構成できます。これはAndroidの例です。
<platform name="Android">
<!-- you can use any density that exists in the Android project -->
<splash src="res/screen/Android/splash-land-hdpi.png" density="land-hdpi"/>
<splash src="res/screen/Android/splash-land-ldpi.png" density="land-ldpi"/>
<splash src="res/screen/Android/splash-land-mdpi.png" density="land-mdpi"/>
<splash src="res/screen/Android/splash-land-xhdpi.png" density="land-xhdpi"/>
<splash src="res/screen/Android/splash-port-hdpi.png" density="port-hdpi"/>
<splash src="res/screen/Android/splash-port-ldpi.png" density="port-ldpi"/>
<splash src="res/screen/Android/splash-port-mdpi.png" density="port-mdpi"/>
<splash src="res/screen/Android/splash-port-xhdpi.png" density="port-xhdpi"/>
</platform>
<preference name="SplashScreenDelay" value="10000" />
また、プログラムでスプラッシュスクリーンを表示/非表示にする 専用プラグイン もあります。
詳細については、 Cordovaドキュメント を参照してください。