小编ear*_*jim的帖子

Xamarin.forms UITest md5未找到错误

我是Xamarin.forms开发的新手,我正在尝试编写一些UI测试.

我在Mac上并遵循了本指南,测试在iOS上运行良好.但是,对于Android测试,模拟器甚至不启动并提供以下输出:

SetUp:System.Exception:执行失败:/ Users/me/Library/Developer/Xamarin/android-sdk-macosx/platform-tools/adb -s emulator-5554 shell md5 /data/app/com.mysite.my_app- 1/base.apk - 退出代码:127/system/bin/sh:md5:找不到

我发现这很奇怪,因为当我运行Android模拟器进行调试时,我没有得到任何与md5相关的错误.

任何人都知道需要做些什么才能运行这些Android测试?

android xamarin.android xamarin xamarin.forms

3
推荐指数
1
解决办法
1046
查看次数

Android - Bundle savedInstanceState在Fragment onCreate()和onCreateView()中为null

我试图将参数传递给a Fragment.

点击Viewa后Fragment,我将我替换Fragment为另一个并将数据传递给下一个Fragment.

我的点击动作:

public void onClick(View view) {
    Bundle args = new Bundle();
    args.putSerializable("order", orders.get(position));
    OrderDetailFragment orderDetailFragment = new OrderDetailFragment();
    orderDetailFragment.setArguments(args);
    FragmentManager fragmentManager = ((AppCompatActivity) context).getSupportFragmentManager();
    fragmentManager.beginTransaction()
            .replace(R.id.order_activity_content_frame, orderDetailFragment)
            .addToBackStack("orderDetails")
            .commit();
}
Run Code Online (Sandbox Code Playgroud)

但在我的目的地Fragment,savedInstanceState即将来临null.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater,
                         ViewGroup container,
                         Bundle savedInstanceState) {
    super.onCreateView(inflater, container, savedInstanceState);

    order = (Order) savedInstanceState.getSerializable("order");

    View rootView = inflater.inflate(R.layout.fragment_order_details, container, false); …
Run Code Online (Sandbox Code Playgroud)

android android-fragments

3
推荐指数
1
解决办法
2549
查看次数

MediaPlayer中的IllegalStateException设置数据源方法

我在重复当前歌曲的onCompletion听众中使用以下代码MediaPlayer

if (isRepeat) {
                if (mMediaPlayer.isPlaying()) {
                    mMediaPlayer.stop();
                    mMediaPlayer.reset();
                }
                try {
                    mMediaPlayer.setDataSource(MainActivity.localTrackList.get(MainActivity.currentOffset).getPath());
                    mMediaPlayer.prepareAsync();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误消息,

  at android.media.MediaPlayer._setDataSource(Native Method)
09-15 09:05:19.884 12545-12545/ W/System.err:     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1115)
09-15 09:05:19.884 12545-12545/ W/System.err:     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1100)
09-15 09:05:19.884 12545-12545/ W/System.err:     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1079)
09-15 09:05:19.884 12545-12545/ W/System.err:     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1028)
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

android

3
推荐指数
2
解决办法
1270
查看次数

如何根据Android中的条件选择启动Activity

如何动态选择应用程序的启动活动

以此方案为例:用户第一次打开应用程序时,他将看到AuthenticationActivity,之后,他将看到MainActivity.如果他退出,他将再次看到AuthenticationActivity.

希望使用闪屏或类似的东西,我不知道是否有这样做的任何方式.

我想在调用setContentView之前检查MainActivityonCreate方法中是否有任何帐户,如果没有,则显示AuthenticationActivity,但对我来说感觉还不错.

android

2
推荐指数
1
解决办法
967
查看次数

尝试在Android中创建文件时出现FileNotFoundException

我正在尝试使用Jexcel API创建一个Excel文件,并使用手机上的应用程序对其进行写入。当我运行该应用程序时,它会抛出一个FileNotFoundException。我什至尝试根据另一个问题的答案来创建文本文件,但是会引发相同的错误。我已在清单中授予了适当的权限,但我似乎仍然无法查明问题所在。请帮忙。

这是我的代码

 public WritableWorkbook createWorkbook(String fileName){

    //Saving file in external storage
        File sdCard = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
        File directory = new File(sdCard.getAbsolutePath() + "/bills");

        //create directory if not exist
        if(!directory.isDirectory()){
            directory.mkdirs();
        }

        //file path
        file= new File(directory, fileName);
        if (file.exists())
            Log.e(taf,"file created");
        else
        Log.e(taf,"file not created");

        WorkbookSettings wbSettings = new WorkbookSettings();
        wbSettings.setLocale(new Locale("en", "EN"));
        wbSettings.setUseTemporaryFileDuringWrite(true);
        WritableWorkbook workbook;
        workbook=null;

        try {
            workbook = Workbook.createWorkbook(file, wbSettings);
            Log.i(taf,"workbook created");
            //Excel sheet name. 0 represents first sheet
            WritableSheet sheet = workbook.createSheet("MyShoppingList", 0);

            try …
Run Code Online (Sandbox Code Playgroud)

file-io android filenotfoundexception

2
推荐指数
1
解决办法
1875
查看次数

如何在TextView的背景上居中显示文本

我开发了一个应用程序 - 包含许多项目的listview.在每个项目中,我都有背景的textview.如何将文本移动到textview的中心?

我的商品代码:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="75dp"
    android:layout_marginTop="10dp">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/lesson_name"
        android:id="@+id/tv_lesson"
        android:layout_gravity="center_horizontal|top"
        android:textAlignment="center"
        android:textStyle="normal|bold"
        android:textSize="20sp"
        tools:targetApi="jelly_bean_mr1" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="?????"
        android:id="@+id/tv_time"
        android:layout_gravity="center"
        android:layout_marginTop="4dp"
        android:layout_marginBottom="10dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/teacher_name"
        android:id="@+id/tv_teacher"
        android:layout_gravity="center_horizontal|bottom"
        android:textStyle="italic" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="???????"
        android:id="@+id/tv_cab"
        android:layout_gravity="center_horizontal|bottom"
        android:layout_marginTop="4dp"
        android:layout_marginBottom="17dp" />

    <TextView
        android:layout_width="45dp"
        android:layout_height="45dp"
        **android:id="@+id/tv_number"**
        android:layout_gravity="center_vertical"
        android:background="@drawable/oval"
        android:textIsSelectable="false"
        android:textStyle="normal|bold"
        android:textSize="40sp"
        android:layout_marginLeft="10dp"
        android:text="1"
        android:textColor="#ffffff"
        tools:targetApi="jelly_bean_mr1"
        android:textAlignment="inherit" />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

我的文字:

我的文本视图

有什么建议?

PS我已经尝试了android gravity = center,我的textview移动到列表项的中心

android listview textview

2
推荐指数
1
解决办法
985
查看次数

Collections.sort()不适用于自定义对象

我正在尝试对我的列表进行排序,但这个不起作用.方法collections.sort()什么都不做.

public boolean schedule(){
    List<Task> keys = new ArrayList<Task>(g.tasks.keySet());
    for(int i = 0; i<keys.size();i++){
        System.out.println(keys.get(i).getSize());
    }
    Collections.sort(keys);
    for(int i = 0; i<keys.size();i++){
        System.out.println(keys.get(i).getSize());
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

这是Task类中的compareTo()方法:

public int compareTo(Task t1) {
    Integer csize = new Integer(t1.size);
    int cmp = csize.compareTo(t1.size);

    return cmp;
}
Run Code Online (Sandbox Code Playgroud)

这种方法有什么问题?

java sorting collections object

2
推荐指数
1
解决办法
1144
查看次数

如何在 Firebase 中使用推送通知关闭活动?

我正在处理 Firebase 推送通知,我想关闭MainActivity. 应用程序应在onMessageReceived()调用时完成。我也通过了,Context但它不起作用。在这种情况下,我会在应用程序打开时发送通知。我的代码:

主活动.java

public class MainActivity extends FragmentActivity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        new FirebaseMessagingService(MainActivity.this);
  }
}
Run Code Online (Sandbox Code Playgroud)

FirebaseMessagingService.java

public class FirebaseMessagingService extends
             com.google.firebase.messaging.FirebaseMessagingService {

    Context context;
    public FirebaseMessagingService(Context ctx) {
        this.context = ctx;
    }

    @Override
    public void onMessageReceived(RemoteMessage remoteMessage) {
        context.finish();
    }
}
Run Code Online (Sandbox Code Playgroud)

java android firebase firebase-cloud-messaging

2
推荐指数
1
解决办法
664
查看次数

在 BottomNavigationView 中单独更改项目颜色

我正在寻找一种方法来以编程方式更改我的BottomNavigationView.

我找到了如何更改图标颜色,我按如下方式操作:

fun setMenu(selected: Int) {
    bottomNavigationMenu?.let {
        it.menu.findItem(R.id.bottom_menu_home).icon
                .setColorFilter(getMenuColor(R.id.bottom_menu_home, selected), PorterDuff.Mode.SRC_ATOP)
        // more items
        it.menu.findItem(R.id.bottom_menu_fidelity)?.icon
                ?.setColorFilter(getMenuColor(R.id.bottom_menu_fidelity, selected), PorterDuff.Mode.SRC_ATOP)
    }
}

fun getMenuColor(id: Int, selected: Int): Int {
    if (Singletons.restaurant.title.isBlank())
        getRestaurant()
    else {
        if (id == selected) return (Singletons.restaurant.color)
        else return ContextCompat.getColor(this, R.color.grey7E)
    }
    return (0)
}
Run Code Online (Sandbox Code Playgroud)

现在我正在寻找如何更改标题颜色。我正在寻找类似的东西

it.menu.findItem(R.id.bottom_menu_home).title // etc
Run Code Online (Sandbox Code Playgroud)

但我找不到正确的函数来做到这一点。

这是我的main_bottom_menu.xml项目:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/bottom_menu_home"
        android:enabled="true"
        android:icon="@drawable/ic_home"
        android:iconTint="@color/cardview_dark_background"
        android:title="@string/bottom_menu_home"
        android:visible="false"
        app:showAsAction="ifRoom" />

    <!-- 3 more items -->

    <item
        android:id="@+id/bottom_menu_profile"
        android:enabled="true" …
Run Code Online (Sandbox Code Playgroud)

android kotlin bottomnavigationview

2
推荐指数
1
解决办法
1313
查看次数

如何在给定的非活动时间后隐藏视图

基本上我有一个音量按钮,SeekBar点击时显示隐藏,如何SeekBar在 2 或 3 秒不活动后再次隐藏?

我只是想知道如何在SeekBar不改变其进度的情况下检查自可见以来花费了多少时间!?

java time android seekbar android-seekbar

1
推荐指数
1
解决办法
847
查看次数