Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android中使用服务播放声音?_Java_Android_Service - Fatal编程技术网

Java 如何在android中使用服务播放声音?

Java 如何在android中使用服务播放声音?,java,android,service,Java,Android,Service,在android的一个特殊应用程序中,我需要制作一个能播放数小时声音的服务,并通过我的服务进行控制。。。但是声音播放器的代码在我的服务类的任何方法中都不起作用: 我的球员级别从服务级别扩展到: package org.tooj; import org.qtproject.example.Book.R; import android.app.Service; import android.content.Intent; import android.media.MediaPlayer; i

在android的一个特殊应用程序中,我需要制作一个能播放数小时声音的服务,并通过我的服务进行控制。。。但是声音播放器的代码在我的服务类的任何方法中都不起作用:

我的球员级别从服务级别扩展到:

package org.tooj;




import org.qtproject.example.Book.R;
import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;




public class Player extends Service {



MediaPlayer Player;
@Override
public void onCreate() {



}

@Override
public IBinder onBind(Intent arg0) {
    // TODO Auto-generated method stub
    return null;
}

 //my player 
public int onStartCommand(Intent intent, int flags, int startId) {
    Player = MediaPlayer.create(ToojActivity.getInstance(),R.ra  w.alfa); 
    Player.setLooping(true);
    Player.setVolume(1,1);
    Player.start();
    return 1;
}

public void onStart(Intent intent, int startId) {
    // TO DO
}
public IBinder onUnBind(Intent arg0) {
    // TO DO Auto-generated method
    return null;
}

public void onStop() {

}
public void onPause() {

}
@Override
public void onDestroy() {
    Player.stop();
    Player.release();
}

@Override
public void onLowMemory() {

}
}

我的主要活动:

package org.tooj;


import android.annotation.TargetApi;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.Window;
import android.view.WindowManager;


import org.qtproject.qt5.android.bindings.QtActivity;

public class ToojActivity extends QtActivity{



private static ToojActivity instance;
private boolean _transparentStatusBar = false;
private boolean _transparentNavigationBar = false;

public ToojActivity(){
    instance = this;
    Log.i("ToojActivity", "ctor");





}

   @TargetApi(Build.VERSION_CODES.KITKAT)
   @Override
   public void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);

    Intent svc=new Intent(this, Player.class); // call service
    startService(svc);




public static ToojActivity getInstance() {
    return ToojActivity.instance;
}

public void SetStatusBarIsTransparent(boolean value) {
    _transparentStatusBar = value;
}

public void GetNavigationBarIsTransparent(boolean value) {
    _transparentNavigationBar = value;
}

public boolean GetStatusBarIsTransparent() {
    return _transparentStatusBar;
}

public boolean GetNavigationBarIsTransparent() {
    return _transparentNavigationBar;
}

}
并表明

<?xml version='1.0' encoding='utf-8'?>
<manifest package="org.qtproject.example.Book" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.0" android:versionCode="1" android:installLocation="auto">

    <application android:hardwareAccelerated="true" android:name="org.qtproject.qt5.android.bindings.QtApplication" android:label="Book">
        <activity android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation"
                  android:name="org.tooj.ToojActivity"
                  android:label="Book"
                  android:screenOrientation="unspecified"
                  android:launchMode="singleTop">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <meta-data android:name="android.app.lib_name" android:value="Book"/>
            <meta-data android:name="android.app.qt_sources_resource_id" android:resource="@array/qt_sources"/>
            <meta-data android:name="android.app.repository" android:value="default"/>
            <meta-data android:name="android.app.qt_libs_resource_id" android:resource="@array/qt_libs"/>
            <meta-data android:name="android.app.bundled_libs_resource_id" android:resource="@array/bundled_libs"/>
            <!-- Deploy Qt libs as part of package -->
            <meta-data android:name="android.app.bundle_local_qt_libs" android:value="1"/>
            <meta-data android:name="android.app.bundled_in_lib_resource_id" android:resource="@array/bundled_in_lib"/>
            <meta-data android:name="android.app.bundled_in_assets_resource_id" android:resource="@array/bundled_in_assets"/>
            <!-- Run with local libs -->
            <meta-data android:name="android.app.use_local_qt_libs" android:value="1"/>
            <meta-data android:name="android.app.libs_prefix" android:value="/data/local/tmp/qt/"/>
            <meta-data android:name="android.app.load_local_libs" android:value="plugins/platforms/android/libqtforandroid.so:plugins/bearer/libqandroidbearer.so:lib/libQt5QuickParticles.so:plugins/mediaservice/libqtmedia_android.so:lib/libQt5MultimediaQuick_p.so"/>
            <meta-data android:name="android.app.load_local_jars" android:value="jar/QtAndroid.jar:jar/QtAndroidAccessibility.jar:jar/QtAndroid-bundled.jar:jar/QtAndroidAccessibility-bundled.jar:jar/QtAndroidBearer.jar:jar/QtAndroidBearer-bundled.jar:jar/QtMultimedia.jar:jar/QtMultimedia-bundled.jar"/>
            <meta-data android:name="android.app.static_init_classes" android:value="org.qtproject.qt5.android.multimedia.QtMultimediaUtils:org.qtproject.qt5.android.multimedia.QtMultimediaUtils"/>
            <!--  Messages maps -->
            <meta-data android:value="@string/ministro_not_found_msg" android:name="android.app.ministro_not_found_msg"/>
            <meta-data android:value="@string/ministro_needed_msg" android:name="android.app.ministro_needed_msg"/>
            <meta-data android:value="@string/fatal_error_msg" android:name="android.app.fatal_error_msg"/>
            <!--  Messages maps -->

            <!-- Splash screen -->
            <!--
            <meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/logo"/>
            -->
            <!-- Splash screen -->

            <!-- Background running -->
            <!-- Warning: changing this value to true may cause unexpected crashes if the
                          application still try to draw after
                          "applicationStateChanged(Qt::ApplicationSuspended)"
                          signal is sent! -->
            <meta-data android:name="android.app.background_running" android:value="false"/>
            <!-- Background running -->
        </activity>



        <service android:enabled="true" android:name=".Player" />

    </application>
    <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="14"/>
    <supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/>

    <!-- The following comment will be replaced upon deployment with default permissions based on the dependencies of the application.
         Remove the comment if you do not require these default permissions. -->
        <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />



    <!-- The following comment will be replaced upon deployment with default features based on the dependencies of the application.
         Remove the comment if you do not require these default features. -->
        <uses-feature android:name="android.hardware.camera" android:required="false" />
    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
    <uses-feature android:name="android.hardware.microphone" android:required="false" />
    <uses-feature android:glEsVersion="0x00020000" android:required="true" />

</manifest>

有什么问题?你试过调试它吗?请添加日志的重要部分运行时没有任何警告或错误,程序完全运行,但“我的服务”中的声音不播放: