ใครช่วยแนะนำวิธีเพิ่มหน้าจอสแปลชลงในแอพ Android ที่ใช้ HTML5 Phonegap ฉันแค่ต้องการให้แสดงเป็นเวลา 5 วินาทีเมื่อโหลด นอกจากนี้ - ใครสามารถให้คำแนะนำได้ว่าควรมีขนาดเท่าใด
ใครช่วยแนะนำวิธีเพิ่มหน้าจอสแปลชลงในแอพ Android ที่ใช้ HTML5 Phonegap ฉันแค่ต้องการให้แสดงเป็นเวลา 5 วินาทีเมื่อโหลด นอกจากนี้ - ใครสามารถให้คำแนะนำได้ว่าควรมีขนาดเท่าใด
คำตอบ:
เพื่อให้มีหน้าจอในโปรแกรมประยุกต์ PhoneGap Android คุณจะต้องใส่ของsplash.png
ไฟล์ลงres/drawable-ldpi
, res/drawable-mdpi
, ,res/drawable-hdpi
res/drawable-xhdpi
โดยที่ไดเร็กทอรีเหล่านั้นแสดงถึงจุดต่อนิ้วต่ำกลางสูงและใหญ่เป็นพิเศษ คุณจะต้องปรับขนาด splash.png (ชื่อไฟล์มีความสำคัญที่นี่) สำหรับแต่ละไดเร็กทอรีมิฉะนั้น Android จะขยายให้คุณ
ขนาดของแต่ละภาพควรเป็น:
จากนั้นในคลาส Java หลักของคุณคลาสที่ขยาย DroidGap คุณจะต้องเพิ่มหนึ่งบรรทัดและแก้ไขอีกบรรทัด เพิ่มครั้งแรก:
super.setIntegerProperty("splashscreen", R.drawable.splash);
บรรทัดนี้ควรจะแสดงขึ้นภายใต้แต่ก่อนsuper.onCreate
super.loadUrl
จากนั้นคุณจะต้องแก้ไขวิธี loadUrl ของคุณเพื่อหยุดชั่วคราวเป็นเวลา 5 วินาทีก่อนที่จะโหลดหน้าหลัก จะมีลักษณะดังนี้:
super.loadUrl("file:///android_asset/www/index.html", 5000);
ที่ควรทำเพื่อคุณ
ฉันเพิ่งได้อัปเดตการทำงานของ SplashScreen บน PhoneGap Android ตอนนี้แอปหลักโหลดในขณะที่กำลังแสดงหน้าจอเริ่มต้น นี่เป็นการปรับปรุงครั้งใหญ่เมื่อเทียบกับการโทรหน้าจอเริ่มต้นที่บล็อก อ่านข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงในบล็อกของฉัน
เอกสาร Phonegap (Apache Cordova) มีรายละเอียดเพียงพอเกี่ยวกับหน้าจอเริ่มต้นและความละเอียดที่แตกต่างกันสำหรับทั้ง Android และ iOS ในที่เดียว
http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html
ในแอป Phonegap เวอร์ชัน Android ของฉันดีบักเกอร์ Eclipse จะแสดงอารมณ์ฉุนเฉียวหากคุณตั้งค่าหน้าจอเริ่มต้นหรือแม้แต่กล่องโต้ตอบ "กำลังโหลด" ก่อนที่จะเรียก loadUrl
ทั้งสองอย่างจะทำงานในแอปจริงที่ติดตั้งบนอุปกรณ์ แต่จะทำให้การแก้ไขข้อบกพร่องของคุณเสียหาย ดังนั้นฉันจึงวางมันไว้ข้างหลัง 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);
}
}
platforms/android/src/com/[your app name]/[Your App Name.java
สิ่งนี้อาจตอบสนองความต้องการของคุณ ช่วยให้คุณปรับแต่งและเพิ่มการตั้งค่า config.xml รูปภาพและ Splashscreens ที่เกี่ยวข้องทั้งหมดในอินเทอร์เฟซที่ใช้งานง่าย
ขอแนะนำให้ดาวน์โหลดไฟล์และติดตั้งด้วยตนเอง ดูเหมือนว่าโปรแกรมติดตั้งอากาศบนเว็บจะไม่ทำงาน
การใช้ Cordova> = 3.6 และสร้างแอปของคุณด้วย Cordova Command-Line Interface คุณสามารถกำหนดค่าหน้าจอเริ่มต้นจาก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สำหรับข้อมูลเพิ่มเติม