0

Androidに関するエラーコードに関するドキュメントが見つかりません。私は、低レベルのAPIセットアップでは機能しているように見えたが、高レベルのAPIセットアップでは機能していないように見えるアプリをまとめています。エラーは、オーディオファイルを再生しようとしたときに発生します。前述のように、すべて低バージョンで機能しました。

ログに表示されるエラーコードは次のとおりです。

MediaPlayer情報/警告( 1、32)MediaPlayer
情報(1,32)
MediaPlayer情報/警告(1,26)
MediaPlayer情報(1,26)
MediaPlayerエラー(351、-4)
MediaPlayerエラー(351、-4)
VideoViewエラー(351、-4)

それで、誰かがこれがどのように機能するかを詳細に説明できますか?MediaPlayer上記のデータにエラーがあることはわかっていますVideoViewが、数字は何を表していますか?特定のエラーだと思いますが、どれですか?

私はこれとこれがどのようにデコードされるかについて何も見つけることができないようです。これが何を意味するのかを知る方法に関するドキュメントはどこにありますか?それが主な質問です。

この特定のエラーコードの答えをさらに良く得ることができれば、実際のドキュメントソースであるため、自分で追加のコードを検索できる可能性もあります。

Eclipseによってエクスポートされた正確なログファイルは次のとおりです。

07-04 12:22:48.298: V/key =(6969): http://xxxxxx/glennharrold/audio/normal/relaxsleepwellfull.mp3
07-04 12:22:48.388: D/MediaPlayer(6969): Couldn't open file on client side, trying server side   
07-04 12:22:48.388: D/SprintMM(6969): Proxy will be bypassed because of WIFI connection.
07-04 12:22:48.508: W/MediaPlayer(6969): info/warning (1, 32)
07-04 12:22:48.508: I/MediaPlayer(6969): Info (1,32)
07-04 12:22:48.508: W/MediaPlayer(6969): info/warning (1, 26)
07-04 12:22:48.508: I/MediaPlayer(6969): Info (1,26)
07-04 12:22:48.508: E/MediaPlayer(6969): error (351, -4)
07-04 12:22:48.508: E/MediaPlayer(6969): Error (351,-4)
07-04 12:22:48.508: D/VideoView(6969): Error: 351,-4

不明確なのは、クライアント側でファイルが見つからないことと関係がある可能性があることを正確に意味することですが、これとまったく同じコードは、このアプリに動作するコードをコピーして作成した下位のAPIバージョンで機能します新しいもの。Eclipseのlogcatに表示されなかったのは(6969)D/MediaPlayerテキストの前E/にある、、、がこの余分なものの意味を知らないことだけです。これは、コードをテキストにエクスポートしたときにのみ表示されます。ファイル。W/I/

4

1 に答える 1

1

参考までに、logcatが情報を表示するとき、それは次のいずれかです。

  • D-デバグ_
  • W-警告_
  • I-情報_

識別子が付いた「/」の後に、Javaコード名を識別します。これは、通常、次のようにTAGによって定義されます。

public class fooClass{
    private static final String TAG = "fooClass";
    // ... SNIP
}

続いて、DalvikVMで実行されているJavaコードのプロセスIDと、プログラムの仕様に応じた有益なエラーコード/メッセージが続きます。

たとえば、fooClass上記で強調表示されているJavaクラスから続行して、次のfooMethodような関数があるとします。

private void fooMethod(){    
    Log.d(TAG, "fooMethod() - This is a debug message");    
    //    
    Log.i(TAG, "fooMethod() - This is a info message");    
    //    
    Log.w(TAG, "fooMethod() - This is a warning message"); 
}

これで、次のようにログに表示されます。

07-04 20:58:00 D/fooClass (1234): fooMethod() - This is a debug message 
07-04 20:58:00 I/fooClass (1234): fooMethod() - This is a info message 
07-04 20:58:00 W/fooClass (1234): fooMethod() - This is a warning message

一部のアプリは、プログラマーの裁量でメッセージを表示するか、不可解なメッセージを表示するかを選択します。

特にAndroidフレームワーク自体の中で、一部のサービスは、トラブルシューティングを支援するために、ROM自体の背後にいる開発者以外の誰にとってもほとんど意味のない無意味なメッセージを表示します。

編集: OPはこれを理解することを明確にすることを主張したので、ここに行きます

MediaPlayerのAOSPソースコードはここのgithubにあります。ここで、行番号1547のソースに「pvmf_return_codes.h」への参照があります。これは、簡単なgoogle-fuでこのリンクにつながります。エラーコードと状態は、互換性のないエラーまたはメディアエラーの結果です。

于 2012-07-04T20:02:50.893 に答える