我有一个干净的Windows 10安装.安装Visual Studio 2015和Xamarin Bussiness版本后,我安装了Xamarin Android Player x64,现在我收到以下错误:
Error when attempting to find VirtualBox please check it's installed and try again.
Xamarin Android Player will now exit.
Run Code Online (Sandbox Code Playgroud)
Xamarin说明了一个解决方案
通过将"C:\ Program Files\Oracle\VirtualBox"添加到我的%PATH%来修复它
我可以毫无问题地打开VirtualBox版本4.3.28 r 100309.
我如何实施此解决方案或是否有更新的解决方案?
virtualbox xamarin.android xamarin windows-10 xamarin-android-player
我正在尝试使用 MediaPlayer 在 Android Studio 中制作一个广播流应用程序,但是当我编译它时显示下一个错误:
使用或覆盖已弃用的 API。使用 -Xlint:deprecation 重新编译以获取详细信息。
我在 Android 文档中搜索,我应该将这种方法替换为setAudioAttributes,我该如何更改它?
public class Radio extends Fragment {
Button play_pause;
MediaPlayer mp;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.radio, container, false);
play_pause = (Button) view.findViewById(R.id.btnplay);
try {
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource("http://198.27.83.65:9962/;stream.mp3");
mp.prepareAsync();
}
catch (Exception e){
Toast.makeText(getContext(),"Error" + e,Toast.LENGTH_SHORT).show();
}
//mp = MediaPlayer.create(this.getContext(), R.raw.radio);
play_pause.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mp.isPlaying()) {
mp.pause();
Toast.makeText(getContext(),"Stop",Toast.LENGTH_SHORT).show();
}
else {
mp.start();
Toast.makeText(getContext(),"Start",Toast.LENGTH_SHORT).show(); …Run Code Online (Sandbox Code Playgroud) 我是Android Studio的新手,我在Ubuntu 14.04 LTS(64位)上安装了它.
当我在Android Studio中打开项目时,我的项目文件标记为红色,运行按钮旁边的调试配置按钮标有红色X,如下图所示:
请告诉我如何解决这个问题.
即使在运行时授予了WRITE_EXTERNAL_STORAGE,App也无法写入Android 6.0上的外部存储(我在模拟器上进行测试); 除非应用程序被杀死并重新启动.
来自AndroidManifest.xml的代码段
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Run Code Online (Sandbox Code Playgroud)
的build.gradle
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
......
minSdkVersion 15
targetSdkVersion 23
}
Run Code Online (Sandbox Code Playgroud)
每当我需要写入外部存储器(用于备份)时,我会检查是否有权限.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
getActivity().getBaseContext().checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, PERMISSION_REQUEST_RW_EXTERNAL_STORAGE);
mPendingAction = PendingAction.Backup;
} else {
BackupRestoreService.startBackup(getActivity().getBaseContext());
}
Run Code Online (Sandbox Code Playgroud)
我也有以下内容
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
Log.d("SettingsActivity", "grantResultsLength: " + grantResults.length);
if (requestCode == PERMISSION_REQUEST_RW_EXTERNAL_STORAGE) {
Log.d("SettingsActivity", "grantResultsLength: " + grantResults.length);
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) …Run Code Online (Sandbox Code Playgroud) 最近我将我的新应用程序上传到Google Play商店.然后优化提示说:
为平板电脑设计您的应用
您的制作APK需要符合以下条件:
(X)您的APK应包含常用平板电脑屏幕密度的自定义drawables资产.
但事实上,我为各种屏幕密度(-mdpi,-tvdpi,-hdpi,-xhdpi,-xxhdpi和-xxxhdpi)包含多个可绘制资产.
我可以想象的唯一原因是我有这些drawables不是在drawable文件夹中,而是在mipmap文件夹中.
对于我的应用程序不使用mipmap文件夹中的ic_launcher图标旁边的任何drawables ,它没有drawable - ***dpi文件夹.
但是,Google自己建议使用mipmap holder而不是drawable.
将启动器图标移动到mipmap /文件夹仍然是最佳做法
只有我跟着他们的导游.然后我从开发者控制台得到了上面的提示.
这是Google Play商店的错误,不是吗?或者,有什么解决方案吗?
我想使用 ViewBinding 来处理 Fragment 中的视图。
FragmentBlankBinding binding;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
binding = FragmentBlankBinding.inflate(inflater, container, false);
return binding.getRoot();
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试从这样的绑定中获取 RecyclerView 时:
binding.notesRecyclerView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
我得到空指针异常:
java.lang.NullPointerException:尝试从空对象引用上的字段“androidx.recyclerview.widget.RecyclerView com.myapps.notes.databinding.FragmentBlankBinding.notesRecyclerView”读取
PS这里是fragment_blank.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".BlankFragment">
<com.getbase.floatingactionbutton.FloatingActionButton
android:id="@+id/newNoteActionButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_margin="3dp"
android:elevation="10dp"
app:fab_icon="@drawable/ic_baseline_add_24" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/notesRecyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 我在协程范围内调用 launch 但它不执行。Snackbar 操作监听器正在执行,但启动块由于某种原因没有执行。
CoroutineScope(Dispatchers.Main).launch {
val scope = this
val mn = snackbarManager(R.id.root)
Snackbar
.make(mn.container, R.string.recpt_deleted, Snackbar.LENGTH_LONG)
.setAction(R.string.undo) {
scope.launch { // not executing
Toast.makeText(requireContext(),"Committing",Toast.LENGTH_LONG).show()
Log.d("COMMIT", "calling commit")
}
}
.show()
}
Run Code Online (Sandbox Code Playgroud) android kotlin android-snackbar kotlin-coroutines coroutinescope
我在Android开发人员上使用Volley跟踪图像兑现教程,我遇到了请求图像请求并缓存它的问题,我想因为我创建的singelton(从教程中复制).
我的Eclipse给出了错误,getInstance(this)因为这是上下文,我想要一个图像.
ImageRequest request = new ImageRequest(
url,
new Response.Listener<Bitmap>() {
@Override
public void onResponse(Bitmap bitmap) {
mNetworkImageView = (NetworkImageView) findViewById(R.id.ImageView);
mImageLoader = MySingleton.getInstance(this).getImageLoader();
mNetworkImageView.setImageUrl(IMAGE_URL, mImageLoader);
// mImageLoader = MySingleton.getInstance(this).getImageLoader();
// mImageLoader.get(IMAGE_URL, ImageLoader.getImageListener(mImageView,
// R.drawable.ic_launcher, R.drawable.ic_launcher));
}
},
0,
0,
null,
new Response.ErrorListener() {
public void onErrorResponse(VolleyError error) {
// mImageView.setImageResource(R.drawable.ic_launcher);
}
});
MySingleton.getInstance(this).addToRequestQueue(request);
Run Code Online (Sandbox Code Playgroud)
这是单身人士:
package com.example.p;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.ImageLoader;
import com.android.volley.toolbox.Volley;
import android.content.Context;
import android.graphics.Bitmap;
import android.support.v4.util.LruCache;
public class MySingleton …Run Code Online (Sandbox Code Playgroud) 我是这个社区的新手,但我已经习惯了很多东西!实际上我开始在Android Studio上编程,但现在我卡在了某个地方.我相信你会很快找到它.
在模拟器Nexus 5 API 23(已经安装在Android Studio中的那个)中,它正在运行,但在我的移动Android 5.1.1 API 22上,它开始运行.
错误:
09-20 19:15:11.526 17776-17776/com.example.stefano.aiutomamma01 E/AndroidRuntime? FATAL EXCEPTION: main
Process: com.example.stefano.aiutomamma01, PID: 17776
java.lang.NoSuchMethodError: No virtual method checkSelfPermission(Ljava/lang/String;)I in class Lcom/example/stefano/aiutomamma01/MainActivity; or its super classes (declaration of 'com.example.stefano.aiutomamma01.MainActivity' appears in /data/app/com.example.stefano.aiutomamma01-2/base.apk)
at com.example.stefano.aiutomamma01.MainActivity.onCreate(MainActivity.java:28)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2332)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2442)
at android.app.ActivityThread.access$800(ActivityThread.java:156)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1351)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:5373)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
JAVA代码:
package com.example.stefano.aiutomamma01;
import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import …Run Code Online (Sandbox Code Playgroud) 我想使用 CoordinatorLayout 在屏幕底部包含一个 BottomAppBar,并在剩余空间中显示一些内容(例如使用 ConstraintLayout)。
如果我向 CoordinatorLayout 添加一个 ConstraintLayout,然后我添加一个放置在 ConstraintLayout 底部的按钮,则该按钮被 BottomAppBar 覆盖。
我希望 ConstraintLayout 用完所有垂直空间,除了 BottomAppBar 所在的位置,这样按钮就不会被覆盖。
我尝试在 ConstraintLayout 中包含 app:layout_behavior="@string/appbar_scrolling_view_behavior",正如某些网站所建议的那样,但它不起作用。另外,在BottomAppBar 中设置app:layout_insetEdge="bottom",然后在ConstraintLayout 中设置app:layout_dodgeInsetEdges="bottom" 也不能正常工作,因为ConstraintLayout 然后在屏幕顶部溢出(但底部没有被覆盖)不再)。
下面是 xml 布局文件,其中BottomAppBar 覆盖了按钮。谢谢
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="top"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<Button
android:id="@+id/myButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<com.google.android.material.bottomappbar.BottomAppBar
android:id="@+id/bottomAppBar"
style="@style/Widget.MaterialComponents.BottomAppBar.Colored"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
android ×9
google-play ×1
kotlin ×1
singleton ×1
ubuntu-14.04 ×1
virtualbox ×1
windows-10 ×1
xamarin ×1
xml ×1