phonegap - màn hình giật gân cho ứng dụng Android


84

Ai có thể vui lòng tư vấn cách tôi có thể thêm màn hình hiển thị vào Ứng dụng Android dựa trên Bản đồ điện thoại HTML5 của mình. Tôi chỉ muốn nó hiển thị trong 5 giây khi tải. Ngoài ra - ai cũng có thể tư vấn kích thước màn hình giật gân nên là gì.


2
Chỉ là một lời khuyên hữu ích, trong mọi trường hợp, bạn nên đặt màn hình giật gân trên ứng dụng di động. Nó sẽ khiến người dùng của bạn rất tức giận.
Kurtis Nusbaum

37
Tôi xin lỗi Kurtis, tôi không chắc bạn đang ủng hộ điều gì. Có rất nhiều ứng dụng di động rất phổ biến hiển thị màn hình giật gân khi đang tải mà không gây khó chịu cho người dùng. iOS thậm chí còn có một hình ảnh gây ra Default.png đặc biệt cho mục đích này.
Devgeeks,

6
@Devgeeks Tôi đồng ý với Kurtis Nusbaum về trường hợp bạn đang hiển thị màn hình giật gân cho cái quái của nó. Nếu ứng dụng của bạn mất nhiều thời gian để khởi động, một màn hình giật gân với chỉ báo hoạt động có lẽ tốt hơn là không có gì, đó có thể là lý do cho các ứng dụng phổ biến mà bạn đang nói đến. Nếu không sẽ có số lượng ứng dụng di động phổ biến bằng (hoặc thậm chí lớn hơn) không hiển thị màn hình giật gân. Về cơ bản, đưa người dùng đến ứng dụng nhanh nhất có thể. Màn hình hiển thị 5 giây mỗi lần là một ý tưởng tồi vì nó sẽ khiến người dùng thất vọng về lâu dài.
Kinjal Dixit 22/10/12

1
Làm ơn ... đừng làm vậy! Splashscreen không phải là một ý tưởng tốt :) Đó là đúng, rằng một số ứng dụng phổ biến có nó, nhưng nó không có nghĩa là, đó là một ý tưởng tốt;)
Stepan Víteček

1
Tôi nghĩ rằng màn hình giật gân là một vấn đề của hương vị / thiết kế. Tất nhiên hầu hết mọi người sẽ khuyên không nên sử dụng nó nhưng tôi không đồng ý với họ; màn hình giật gân 1 giây sẽ không gây hại gì, thay vào đó, nó sẽ thêm "cá tính" và đặt "chủ đề" cho ứng dụng của bạn, làm cho ứng dụng của bạn nổi bật trong số hàng nghìn ứng dụng "bootstrapish". Trong điện thoại của tôi, hơn 70% sử dụng hàng ngày các ứng dụng có màn hình splash :)
numediaweb

Câu trả lời:


176

Để có một màn hình giật gân trong một ứng dụng PhoneGap Android bạn cần phải đặt của bạn splash.pngtập tin vào res/drawable-ldpi, res/drawable-mdpi, res/drawable-hdpi, res/drawable-xhdpi. Nơi các thư mục đó đại diện cho các chấm thấp, trung bình, cao và cực lớn trên mỗi inch. Bạn sẽ cần thay đổi kích thước của bạn splash.png (tên tệp quan trọng ở đây) cho từng thư mục hoặc Android sẽ mở rộng nó cho bạn.

Kích thước của mỗi hình ảnh phải là:

  • xlarge (xhdpi): ít nhất 960 x 720
  • lớn (hdpi): ít nhất 640 x 480
  • trung bình (mdpi): ít nhất 470 x 320
  • nhỏ (ldpi): ít nhất 426 x 320

Sau đó, trong lớp Java chính của bạn, lớp mở rộng DroidGap, bạn sẽ cần thêm một dòng và sửa đổi một dòng khác. Thêm đầu tiên:

super.setIntegerProperty("splashscreen", R.drawable.splash);

dòng này sẽ hiển thị dưới super.onCreatenhưng trước đó super.loadUrl. Sau đó, bạn sẽ cần phải sửa đổi phương thức loadUrl của mình để tạm dừng trong 5 giây trước khi tải lên trang chính. Nó sẽ trông như thế này:

super.loadUrl("file:///android_asset/www/index.html", 5000);

Chuyện đó nên làm vì bạn.

Gần đây tôi đã thực hiện một số cập nhật về cách hoạt động của SplashScreen trên PhoneGap Android. Ứng dụng chính hiện tải trong khi màn hình giật gân đang được hiển thị. Đây là một cải tiến lớn so với cuộc gọi màn hình giật gân chặn trước đây. Đọc thêm về những thay đổi trên blog của tôi .


1
Xin chào SImon, tôi chỉ gặp lỗi cho biết 'ứng dụng đã dừng đột ngột khi thực hiện các thao tác trên?
Dancer

2
Có vẻ như đã xảy ra sự cố khi sử dụng thông số thời gian chờ trong PhoneGap 1.2. Xem thêm stackoverflow.com/questions/8100219/...
Paul Beusterien

1
Nếu tôi tháo 5 giây thời gian chờ các biên dịch ứng dụng và hiển thị thời gian ngắn trên tải - vì vậy nó trông giống như một sự kết hợp của trên với một sửa chữa thời gian chờ sẽ làm việc một điều trị .. cổ vũ cho sự giúp đỡ của bạn
Dancer

6
Yêu cầu người dùng đợi trong 5 giây là lời khuyên khủng khiếp.
grahamparks

1
@BallisticPugh Bạn muốn sử dụng hình ảnh 9 bản vá để bạn có thể kiểm soát những gì được kéo dài.
Simon MacDonald


3

Trong ứng dụng Phonegap của tôi, phiên bản Android, trình gỡ lỗi Eclipse gây ra cơn giận dữ nếu bạn đặt màn hình giật gân hoặc thậm chí hộp thoại 'đang tải' trước khi gọi loadUrl.

Cả hai đều sẽ hoạt động trong ứng dụng thực được cài đặt trên thiết bị, nhưng chúng sẽ phá vỡ việc gỡ lỗi của bạn. Vì vậy, tôi đã đặt chúng đằng sau loadUrl, nơi chúng có thể không gây hại và vẫn hiển thị tốt trước chính ứng dụng.

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);
    ...
}...

3

Tôi cũng đã phải đối mặt với vấn đề này trong phonegap android .. nhưng bây giờ tôi đã có giải pháp.

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.

Vui lòng chỉnh sửa tệp java chính của bạn trong thư mục src trong thư mục dự án của bạn.

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);
     }
}

1
Điều này thường có thể được tìm thấy:platforms/android/src/com/[your app name]/[Your App Name.java
Ian Jamieson

Tôi không tìm thấy bất kỳ tệp .java nào trong đường dẫn nói trên
Prak

0

Điều này có thể sẽ đáp ứng nhu cầu của bạn. Nó cho phép bạn tùy chỉnh và thêm tất cả cài đặt config.xml, hình ảnh và màn hình giật gân có liên quan trong một giao diện trực quan đẹp mắt.

Tôi khuyên bạn nên tải xuống tệp và cài đặt theo cách thủ công. Trình cài đặt không khí dựa trên web dường như không hoạt động.

http://aj-software.com/configap/index.html


0

Sử dụng Cordova> = 3.6 và xây dựng ứng dụng của bạn với Giao diện dòng lệnh Cordova, bạn có thể định cấu hình màn hình giật gân từ config.xmltệp. Đây là một ví dụ cho 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" />

Ngoài ra còn có một plugin chuyên dụng để hiển thị / ẩn màn hình giật gân theo chương trình.

Xem tài liệu Cordova để biết thêm thông tin.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.