小编Pon*_*und的帖子

平板电脑的apk更新仍然说"Designed for phones"

我昨天发布了apk更新(https://play.google.com/store/apps/details?id=nu.heka.tinnitusrev2),在此次更新中,我添加了对平板电脑的支持.

问题是当我在平板电脑上的Play商店中查找应用程序时,我仍然有那种丑陋的"专为手机设计".

这是我做的步骤:

  • 更新了7"和10"平板电脑的截图(本地化版本和国际版)
  • 使用sw600dp和sw720dp限定符
  • 清单中更新的版本代码和名称
  • apk详细信息显示它支持所有尺寸小 - xlarge

平板电脑的屏幕截图显示在我的平板电脑上,所以我不知道为什么它仍然会获得Designed for phones标签.

我错过了什么,或者这只是我必须等待的东西?

编辑:

我在Tablet清单上看到我应该声明:

      <supports-screens
    android:largeScreens="true"
    android:xlargeScreens="true"
    />
Run Code Online (Sandbox Code Playgroud)

但它也说如果我理解正确的话,minSdk应该是11(?!)我有minSDK 9和一些有旧设备的用户.所以我不能让我的应用程序<11来摆脱那个邮票?

android tablet google-play

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

KitKat ART-build警告

我有一个与KitKat 4.4.2和ART-build完美运行的应用程序,但是在我的片段之间滑动时会收到警告.我有Tabs + Viewpager使用ActionBarSherlock:

    01-13 14:26:20.550  28671-28671/com.test.xxx W/art? Attempt to
    remove local SIRT entry from IRT, ignoring 
    01-13 14:26:20.640 28671-29243/com.test.xxx W/art: 
   Thread[26,tid=29243,Native,Thread*=0x4486f6b0,peer=0x64a178e8,"Thread-2333"] 
   attached without supplying a name
Run Code Online (Sandbox Code Playgroud)

这是值得担心的事情还是我可以忽略它?我发现的唯一信息是在android源代码中:

    void Runtime::AttachCurrentThread(const char* thread_name, bool as_daemon, 
    Object* thread_group) {
    Thread::Attach(thread_name, as_daemon, thread_group);
    if (thread_name == NULL) {
    LOG(WARNING) << *Thread::Current() << " attached without supplying a name";
         }
    }
Run Code Online (Sandbox Code Playgroud)

android warnings

6
推荐指数
0
解决办法
974
查看次数

无法在Fragment中投射SearchView(AppCompat)

我正在尝试从Fragment中侦听SearchView中的文本更改,但它在此行上失败: menu.findItem(R.id.action_search);

例外:

        java.lang.ClassCastException: android.support.v7.internal.view.menu.MenuItemWrapperJB cannot be cast to android.support.v7.widget.SearchView
        at se.xxx.xxx.FragmentList.onCreateOptionsMenu(FragmentList.java:155)
Run Code Online (Sandbox Code Playgroud)

我的onCreateOptionsMenu(在片段中):

     @Override
  public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.main, menu);
  SearchView sv = (SearchView) menu.findItem(R.id.action_search); //crashes here

    sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String s) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String s) {
            adapter.getFilter().filter(s.toString());
            return false;
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

菜单布局xml(main.xml):

    <menu 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"
tools:context="se.xxx.xxx.MainActivity" >

<item
    app:actionViewClass="android.support.v7.widget.SearchView"
    android:id="@+id/action_search"
    android:icon="@android:drawable/ic_menu_search"
    android:title="blabla"
    app:showAsAction="always"
   />
Run Code Online (Sandbox Code Playgroud)

android android-fragments searchview

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

如何使用AES解密Android中的文件?

我有一个文件(mp3),我加密,我的意图是将此文件下载到Android设备并解密它,但在解密过程中我得到一个IOException:

java.io.IOException: last block incomplete in decryption

我知道以下代码中存在明显的安全漏洞,我只是想让它先工作.

对此有任何帮助表示赞赏,如果这是一个愚蠢的问题,我一般都是编码的新手,所以请原谅我!

加密类(未在Android中完成,有效):

public class EncryptFile {
public static void main(String args[]) {
    if (args.length < 1) {
        System.out.println("Usage: java EncryptFile <file name>");
        System.exit(-1);
    }
    try {
        File aesFile = new File("encodedfile.enc");
        FileInputStream fis;
        FileOutputStream fos;
        CipherInputStream cis;
         //Creation of Secret key
        String key = "mysecretkey";
        int length=key.length();
        if(length>16 && length!=16){
            key=key.substring(0, 15);
        }
        if(length<16 && length!=16){
            for(int i=0;i<16-length;i++){
                key=key+"0";
            }
        }
        SecretKeySpec secretKey = new SecretKeySpec(key.getBytes(),"AES");
         //Creation of Cipher objects
        Cipher encrypt …
Run Code Online (Sandbox Code Playgroud)

java encryption android aes

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