我为所有Android架构构建了ffmpeg库.但是有些细节令我困惑.首先让我逐步解释我是如何建立的.
libx264从
https://www.videolan.org/developers/x264.html下载了最新版本build_all.sh脚本(在x264文件夹中),用于(几乎)所有Android平台创建库.然后我android在x264文件夹中找到了文件夹.例如android/arm android/arm64 android/x86 android/x86_64在x264文件夹中.ffmpeg3.3.4从https://ffmpeg.org/download.html下载ffmpeg3.3.4文件夹副本.用android架构名称命名它们.喜欢ffmpeg3.3.4-arm64 ffmpeg3.3.4-arm ffmpeg3.3.4-x86 ffmpeg3.3.4-x86_64'named'.sh files根据其架构名称将每个文件移动到指定的ffmpeg文件夹.例如build_android_x86.sh=>ffmpeg3.3.4-x86build_android_arm64.sh 例
#!/bin/bash
#Change NDK to your Android NDK location
NDK=$HOME/Android/Sdk/ndk-bundle
PLATFORM=$NDK/platforms/android-21/arch-arm64/
PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64
GENERAL="\
--enable-small \
--enable-cross-compile \
--extra-libs="-lgcc" \
--arch=aarch64 \
--cc=$PREBUILT/bin/aarch64-linux-android-gcc \
--cross-prefix=$PREBUILT/bin/aarch64-linux-android- \
--nm=$PREBUILT/bin/aarch64-linux-android-nm \
--extra-cflags="-I../x264/android/arm64/include" \
--extra-ldflags="-L../x264/android/arm64/lib" "
MODULES="\
--enable-gpl \
--enable-libx264"
function build_arm64
{
./configure \
--logfile=conflog.txt \
--target-os=linux \ …Run Code Online (Sandbox Code Playgroud)
让我详细解释一下; 我有通知,此通知打开B activity两个案例.
案例:
情况1
我点击该通知,并将其打开B activity与case-1.当我press back想要去A activity杀人B activity.我B activity不再需要了.这里的一切都很简单,没有使用flags.当我打开B activity并从这里按两次后,它会继续A activity然后关闭app.我的麻烦在于,如果我打开app手机的导航按钮(不记得这个按钮的名称)应用程序正在打开B activity.那不是我的预期.我想打开A activity.不想再看B activity了.
案例2
我点击该通知,并将其打开B activity与case-2.当我press back我想要把A activity前面,而不会产生任何新的东西.如果我再次按下B activity,两次并关闭应用程序,然后再次从手机的导航按钮重新打开应用程序,想要打开应用程序A activity.
那么我怎么能正确地做到这一点,我试图使用flags(我已经阅读过文档),但无法得到工作.什么flags应该我使用当我打开B activity和onBackPress方法B activity去 …
我尝试了很多方法,我对我的代码做了很多更改,我阅读了Android MediaPlayer文档,我尝试了StackOverflow示例,但没有一个可以解决我的问题.
我的问题:当我按下模拟器或手机的主页按钮然后重新打开应用程序时,它从头开始.
希望您能够帮助我.提前致谢.
这是我的代码:
public class Mediaplayer extends Activity implements OnCompletionListener,
OnErrorListener, OnInfoListener, OnPreparedListener,
OnSeekCompleteListener, OnVideoSizeChangedListener,
SurfaceHolder.Callback, MediaController.MediaPlayerControl {
Display currentDisplay;
SurfaceView surfaceView;
SurfaceHolder surfaceHolder;
MediaPlayer mediaPlayer;
MediaController controller;
int videoWidth = 0;
int videoHeight = 0;
boolean readyToPlay = false;
public final static String LOGTAG = "CUSTOM_VIDEO_PLAYER";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.video);
surfaceView = (SurfaceView) this.findViewById(R.id.SurfaceView);
surfaceHolder = surfaceView.getHolder();
surfaceHolder.addCallback(this);
surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mediaPlayer = new MediaPlayer();
mediaPlayer.setOnCompletionListener(this);
mediaPlayer.setOnErrorListener(this);
mediaPlayer.setOnInfoListener(this);
mediaPlayer.setOnPreparedListener(this);
mediaPlayer.setOnSeekCompleteListener(this);
mediaPlayer.setOnVideoSizeChangedListener(this);
mediaPlayer.setWakeMode(getApplicationContext(),
PowerManager.PARTIAL_WAKE_LOCK);
String filePath …Run Code Online (Sandbox Code Playgroud) 我正在尝试firebase通过在.net coreWeb后端上使用电子邮件身份验证JWT。我找不到详细清晰的示例。
我成功登录我的android应用程序,然后得到IdToken。
我在PostMan(或应用程序)上IdToken以前缀发送"Bearer"到我的控制器。但是它给401
无论我尝试了什么,我都无法得到200。只有401。
我的服务配置:
services
.AddAuthentication(o =>
{
o.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
o.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
o.DefaultScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer("Bearer", options =>
{
options.Authority = "https://securetoken.google.com/myapp-c1e32";
options.SaveToken = true;
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidIssuer = "https://securetoken.google.com/myapp-c1e32",
ValidateAudience = true,
ValidAudience = "myapp-c1e32",
ValidateLifetime = true
};
});
Run Code Online (Sandbox Code Playgroud)
我的控制器:
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
public ActionResult GetAllRoomsWithOtherInfos(int id)
{ …Run Code Online (Sandbox Code Playgroud) 我打开Message-FragmentfromActivity-A然后打开Camera-Fragmentfrom Message-Fragment。现在当前片段是Camera-Fragment,我有媒体滑块。现在我有两个选项,一个是ImagePreview-Fragment如果我单击媒体滑块上的图像项就会打开。另一个是VideoPreview-Activity如果单击媒体滑块上的视频项目打开。所以有一个条件是点击video-item。如果我点击媒体滑块和视频大小的视频产品大于10 MB,我打开VideoTrim-Activity,并完成装饰,当我打电话VideoPreview-Activity。
我正在从VideoPreview-Activity或发送媒体ImagePreview-Fragment。所以当我发送媒体时,我想返回Message-Fragment数据。
我如何返回Message-Fragmentfrom VideoPreview-Activity(从 Camera-FragmentVideoPreview-Activity打开)和(从 中打开VideoTrim-Activity)。另外,如果您能帮助我了解如何返回ImagePreview-Fragment,Message-Fragment我将不胜感激。这些是分开的问题。希望你能帮忙。
我通过添加到 backstack 来打开片段addToBackStack(fragmentTag)。
编辑:VideoPreview-Fragment 必须是 VideoPreview-Activity,VidoTrim-Fragment 必须是 VideoTrim-Activity。这些是活动。就像你在图片上看到的那样。
首先,我想说我不太了解smtp电子邮件php_mail的事情.我正在使用电子邮件插件来使用smtp邮件.我配置了我的smtp选项,然后用测试功能测试了电子邮件.
有日志:
Test Message Sent
The result was:
bool(true)
The full debugging output is shown below:
object(PHPMailer)#4817 (65) {
["Priority"]=>
int(3)
["CharSet"]=>
string(5) "UTF-8"
["ContentType"]=>
string(10) "text/plain"
["Encoding"]=>
string(4) "8bit"
["ErrorInfo"]=>
string(0) ""
["From"]=>
string(24) "destektazedizi@gmail.com"
["FromName"]=>
string(16) "Taze Dizi Destek"
["Sender"]=>
string(0) ""
["ReturnPath"]=>
string(0) ""
["Subject"]=>
string(47) "WP Mail SMTP: Test mail to farukest90@gmail.com"
["Body"]=>
string(68) "This is a test email generated by the WP Mail SMTP WordPress plugin."
["AltBody"]=>
string(0) ""
["MIMEBody":protected]=>
string(69) "This is a test …Run Code Online (Sandbox Code Playgroud) android ×4
android-ndk ×1
asp.net-core ×1
c# ×1
email ×1
ffmpeg ×1
firebase ×1
java ×1
jwt ×1
onresume ×1
php ×1
ssl ×1
stack ×1
surfaceview ×1
wordpress ×1