問題タブ [android-photos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android新しいフォトアルバムを作成し、コードのデフォルトの電話ギャラリーに追加する方法
私はアプリを持っています。それをFilterAppXと呼びましょう。基本的には画像を読み込んで、花やいくつかのばかげたアイテムを追加するなどしてカスタマイズします。
画像を処理した後、保存します。すべてのAndroid携帯に付属しているデフォルトのGalleryアプリにフォトアルバムを作成できるようにしたいので、たとえばGalaxy S2には、「Gallery」というアプリ(appStoreからダウンロードされていない、携帯に付属)があります。 、これにより、今カメラから、または画面キャプチャから、または何でも、電話で撮った多くの異なる画像を選択できます
下のスクリーンショットのようなもの
ご覧のとおり、これはGalaxys2のデフォルトのAndroidフォンからのスクリーンショットです。
他のアプリをダウンロードしましたが、アプリの名前が付いた独自のアルバムが作成されるので、それが可能であることがわかっています。基本的に同じことをしようとしています。「FilterAppX」というフォルダに自分の写真を入れてください。地図
これどうやってするの?
android - Google フォト アプリから動画 (非ローカル) を取得する
Google フォト アプリで、デバイスにキャッシュされていない動画を選択しようとしています。
ACTION_GET_CONTENTインテントを使用してオプション ダイアログを起動し、そこから Google フォト アプリを選択します。
ローカル ビデオを選択している間、この形式で Uri を返します。
content://media/external/video/media/6708
それから、コンテンツ プロバイダーにクエリを実行して実際のファイルの場所を取得し、そこから処理を進めます。ファイルの場所はこんな感じ。
/storage/emulated/0/WhatsApp/Media/WhatsApp Video/VID-20131102-WA0000.mp4
ここで、オンライン ビデオ、つまり、デバイスでまだ利用できず、使用するためにダウンロードする必要があるビデオを選択すると、返される Uri は次のようになります。
content://com.google.android.apps.photos.content/1/ https://lh6.googleusercontent.com/_RD-QTO_SK5jlaPldTe2n5GANqMc3h-ukcbNoFlF1NLy=s0-d
これで、このビデオへの実際のリンクを取得するのに役立つ文書化された ContentProvider はありません。クエリを実行しても、DISPLAY_NAME 列と SIZE 列以外は何も返されません。
DISPLAY_NAMEには video.mpeg が含まれます (異なる動画で同じ表示名)
SIZEはおそらく実際のファイルのサイズを教えてくれます。
さまざまな投稿を確認したところ、コンテンツ プロバイダーを通じてビデオの InputStream を取得し、ファイルを保存して、ファイルを操作する必要があると考えました。ただし、画像ファイルの選択は問題なく機能しますが、ビデオの場合は機能しません。
したがって、ストリームをファイルにコピーするには、次のコードがあります。
最後に一時ファイルに書き込みます。ファイルは作成されますが、正しくフォーマットされていないようです。VLC はファイルを再生しますが、全体を通して最初のフレームのみを表示します。
上記の URI の最後の部分から URL を取得し、ブラウザーで表示しようとすると、GIF ファイルがダウンロードされます。それが問題だと思います。しかし、ビデオのmpeg形式を取得する方法がわかりません。
誰も同じことを経験しましたか?
android - ギャラリーではなく Android フォトからのアップロードを制限する
Android の新しいバージョンでお気づきかもしれませんが、Android にはギャラリーと写真の 2 つの画像ギャラリーがあります。将来、Google はギャラリーを非推奨にして削除し、写真ライブラリのみを保持します。
Android API レベル 18 以降の「.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);」を使用して、ユーザーが複数の画像を選択してアップロードできるようにしたいと考えています。問題は、ユーザーがギャラリーからアップロードすることを選択した場合、機能が機能しないことです (選択できる画像は 1 つだけです)。
アプリが Android Photo のアプリを介して自動的にアップロードを試みるようにするにはどうすればよいですか?
これまでの私のコードは次のとおりです。
..
android - Android - ClipData から画像を取得するにはどうすればよいですか?
一度に複数の画像をアップロードできる画像アップローダーを作成しています。
...
選択したすべての画像を写真配列に追加したいと思いますArrayList<Bitmap>
。ClipData.Item
どういうわけか、をに変換する必要Bitmap
がありますが、どうすればよいですか?