javascript

java

python

c#

android

node.js

reactjs

c++

php

html

jquery

css

.net

ios

git

ruby-on-rails

sql

c

string

ruby

在Eclipse中将现有项目转换为Android项目?

如何在Eclipse中将现有项目转换为Android项目?

特别是,我想将一个普通的旧Java项目转换为一个Android Library项目。

谢谢。

trans by 2020-01-20T03:24:52Z

java-如何:将语音命令导入android应用程序

在线上有许多教程可为Android应用添加语音识别。 它们通常令人困惑,并且编码的发布者永远也不会提出问题。 我需要一个带有完整编码的简单教程,以向我的应用添加语音识别。

trans by 2020-01-20T01:58:00Z

移动-Android中的文本/布局对齐(textAlignment,重力)

android:textAlignmentandroid:gravity有什么区别?

trans by 2020-01-20T01:15:00Z

eclipse-错误消息:此Android SDK需要Android Developer Toolkit版本22.6.1或ab

最近,我遇到了以下错误:

screenshot of dialog

最奇怪的是,我刚刚通过eclipse从sdk更新了一些软件包。 没有信息或警告,此更新后当前adt将崩溃。 我已经检查了最新更新,即使在Google页面上也找不到新的adt。 甚至新的adb也包含旧的adt。

来自[http://developer.android.com/tools/sdk/tools-notes.html:]

依赖项:Android SDK平台工具修订版18或更高版本。 如果你   正在使用ADT在Eclipse中进行开发,请注意此版本的SDK   这些工具设计用于ADT 22.6.1及更高版本。 如果没有   已经,将您的ADT插件更新为22.6.1。

唯一的解决方案是为此下载新的独立Eclipse和外部插件?Android Studio是否会遇到相同的问题?

环境:linux x64。

trans by 2020-01-20T00:09:30Z

android-如何从片段本身替换活动的片段?

我的应用程序的Activity中有一个Fragment。 我想以编程方式用当前片段本身中的另一个片段替换该片段。

例如,如果我单击片段内的按钮,则片段应替换为另一个片段,但活动应保持不变。

可能吗? 如果是这样,该怎么办?

trans by 2020-01-19T23:58:13Z

Java-Android SQLiteOpenHelper:为什么不调用onCreate()方法?

我正在尝试制作我的第一个Android应用程序。 我注意到如果数据库不存在,则不会调用SQLiteOpenHelper.onCreate()方法来创建表。 但是,即使我尝试调试,onCreate()方法也不起作用。

请查看下面的代码,并给我任何建议。 任何帮助将不胜感激。

public class NameToPinyinActivity extends Activity {

    DatabaseOpenHelper helper = null;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.nametopinyin);

        Button searchButton = (Button) findViewById(R.id.search);
        searchButton.setOnClickListener(new ButtonClickListener());

        helper = new DatabaseOpenHelper(NameToPinyinActivity.this);
    }

public class DatabaseOpenHelper extends SQLiteOpenHelper {

    /** DB Name */
    private static final String DB_NAME = "pinyin";

    /** CREATE TABLE SQL */
    private static final String CREATE_TABLE_SQL = "CREATE TABLE UNICODE_PINYIN"
            + "(ID INTEGER PRIMARY KEY AUTOINCREMENT, "
            + "UNICODE TEXT NOT NULL, PINYIN TEXT NOT NULL)";

    public DatabaseOpenHelper(Context context) {
        super(context, DB_NAME, null, 1);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.beginTransaction();
        try {
            db.execSQL(CREATE_TABLE_SQL);
            db.setTransactionSuccessful();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            db.endTransaction();
        }
    }
trans by 2020-01-19T21:26:01Z

适用于Android的Visual Studio(2015)模拟器不起作用-XDE.exe-退出代码3

我在Visual Studio 2015中创建了一个新的Blank App(Xamarin.Forms Portable)项目。

当我尝试在Visual Studio Emulator for Android中运行Android项目时,我仅收到一条通用错误消息:

创建'VS Emulator 5“ KitKat(4.4)XXHDPI Phone'设备时发生错误。

因此,我研究了适用于Android的“工具”->“ Visual Studio模拟器”,并尝试手动运行模拟器。 一段时间后失败,日志显示:

24.7.2015 16:22:52:[信息性]重新初始化已安装的配置文件。

24.7.2015 16:22:52:[信息性]已初始化安装的配置文件。 设备:2平台:1

24.7.2015 16:22:52:[信息性]重新初始化可安装的配置文件。

24.7.2015 16:22:52:[信息性]可安装配置文件已初始化。 设备:30平台:4

24.7.2015 16:22:56:[信息性]等待启动设备...

24.7.2015 16:22:56:[信息性]启动设备:5英寸KitKat(4.4)XXHDPI电话

24.7.2015 16:22:56:[信息性]验证模拟器参数...

24.7.2015 16:22:56:[信息性]确定模拟器是否已在运行...

24.7.2015 16:22:56:[信息]正在准备虚拟机...

24.7.2015 16:22:58:[严重]创建'VS Emulator 5“ KitKat(4.4)XXHDPI Phone'设备时发生错误。

24.7.2015 16:22:58:[重要] XDE路径:C:\ Program Files(x86)\ Microsoft XDE \ 10.0.10240.0 \ xde.exe

24.7.2015 16:22:58:[重要] XDE参数:/ sku Android / displayName“ VS Emulator 5 \” KitKat(4.4)XXHDPI Phone“ / memSize 2048 / diagonalSize 5 / video” 1080x1920“ / vhd” C:\ Users \ lacike \ AppData \ Local \ Microsoft \ VisualStudioEmulator \ Android \ Containers \ Local \ Devices \ vhd \ 5_KitKat_(4.4)_XXHDPI_Phone \ image.vhd“ /名称” VS Emulator 5 inch KitKat(4.4)XXHDPI Phone.lacike“ / noStart /静音

24.7.2015 16:22:58:[严重] XDE退出代码:3

但是,当我在Windows Phone模拟器中运行WinPhone项目时,它可以工作。 它像Android Emulator一样使用XDE.exe,因此Hyper-V网络正在运行。

有任何想法吗?

更新:

当我尝试安装新的设备配置文件时,我遇到了同样的问题:

Android的Visual Studio 2015 RC模拟器无法启动

该过程停留在“复制.vhd文件并创建虚拟机”上。

更新2:

当我打开命令提示符,然后使用以下xde参数运行xde.exe时:

xde.exe / sku Android / displayName“ VS Emulator 5 \” KitKat(4.4)XXHDPI Phone“ / memSize 2048 / diagonalSize 5 / video” 1080x1920“ / vhd” C:\ Users \ lacike \ AppData \ Local \ Microsoft \ VisualStudioEmulator \ Android \ Containers \ Local \ Devices \ vhd \ 5_KitKat_(4.4)_XXHDPI_Phone \ image.vhd“ / name” VS Emulator 5 inch KitKat(4.4)XXHDPI Phone.lacike

我收到以下错误:Service Host Error

trans by 2020-01-19T21:12:09Z

电话号码验证Android

如何检查电话号码是否有效? 长度上限为13(包括前面的字符+ sign to be accepted and from 0-9 numbers and length b/w 10-13 and should not accept other characters)。

我怎么做?

我尝试了这个:

String regexStr = "^[0-9]$";

String number=entered_number.getText().toString();  

if(entered_number.getText().toString().length()<10 || number.length()>13 || number.matches(regexStr)==false  ) {
    Toast.makeText(MyDialog.this,"Please enter "+"\n"+" valid phone number",Toast.LENGTH_SHORT).show();
    // am_checked=0;
}`

我也尝试过这样:

public boolean isValidPhoneNumber(String number)
{
     for (char c : number.toCharArray())
     {
         if (!VALID_CHARS.contains(c))
         {
            return false;
         }
     }
     // All characters were valid
     return true;
}

两者都不起作用。

输入类型:+ sign to be accepted and from 0-9 numbers and length b/w 10-13 and should not accept other characters

trans by 2020-01-19T20:41:35Z

调试-与运行android 6.0的手机连接时,android studio中没有可调试的进程

大家!

我被android studio弄糊涂了。当我插入手机调试应用程序时,logcat可以检测到我的手机,但是我无法选择进程。 它说“没有可调试的进程”,而不是普通的“没有可调试的应用程序”。

我的手机是植根的三星s5(android 6.0)。

有任何想法吗?

谢谢!

trans by 2020-01-19T20:20:26Z

xml-在Android vi上以编程方式设置“?selectableItemBackground”

在xml中,我经常这样做以模拟?selectableItemBackground的效果:

<android.support.v7.widget.CardView
    android:id="@+id/cardView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:foreground="?selectableItemBackground">

    ...

</android.support.v7.widget.CardView>

有什么办法可以在Java中访问?selectableItemBackground

trans by 2020-01-19T20:17:10Z

android-cod中AndroidManifest.xml的用户versionName值

Dialog包含应用程序的版本名称,例如

android:versionName="1.0"

现在的问题-是否可以以某种方式在源代码中访问此版本名称,以便例如可以在“大约Dialog”中显示它?

trans by 2020-01-19T20:02:53Z

java-如何在打ze模式下将白名单应用Android 6.0

这个问题与将于本月底最终发布的Android 6.0 Preview 3有关。

我正在Nexus 5“ hammerhead”上通过Google的预览版3在Android 6.0中测试某些功能。

新功能是“打mode模式”-类似于深度睡眠模式,当网络被禁用且电话处于睡眠状态时,只有SMS,呼叫或高优先级GCM消息才能将其唤醒。 但是像WhatsApp一样-在打ze模式下,它会在2小时或更长时间后接收消息,具体取决于计时器。 但是有一个名为“白名单”的“未优化”应用程序列表,您可以在其中手动添加应用程序。

好的,我想找到一种方法,以编程方式将我的应用程序添加到电池设置中设备中存在的“白名单应用程序列表”中,而无需用户交互。

尝试使用反射进入它,我发现:

在android.os.IDeviceIdleController中,有一个方法:

公共抽象无效addPowerSaveWhitelistApp(字符串packageNameOfApp)

但这是一个接口...因此,我们无法创建接口的实例。

尚无有关此接口,方法或任何继承树的文档。

也许您有一些想法,我应该在哪里寻找以编程方式在其中添加我的应用程序的可能性?

还有一种方法

公共抽象布尔isPowerSaveWhitelistApp(字符串packageName)

我认为应该可以以某种方式访问哪个? 检查该应用程序是否存在于白名单中,并且可能最终希望ASK用户将其添加到白名单中。

所以我的问题是,你们当中有人尝试过做出更好的结果吗? 因为我被卡住了,我认为这是一个死胡同。

有关更多信息:[https://newcircle.com/s/post/1739/2015/06/12/diving-into-android-m-doze]

trans by 2020-01-19T19:21:04Z

android-工作应用程式上的java.lang.ClassNotFoundException

我已经创建并发布了我的第一个Android应用程序。 非常简单。 它在模拟器和某些手机上正常工作,但是出现此错误:

java.lang.RuntimeException: Unable to instantiate application cz.teamnovak.droid.Novak ESC Track guide: java.lang.ClassNotFoundException: cz.teamnovak.droid.Novak ESC Track guide in loader dalvik.system.PathClassLoader[/data/app/cz.teamnovak.droid-1.apk]
    at android.app.ActivityThread$PackageInfo.makeApplication(ActivityThread.java:649)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4232)
    at android.app.ActivityThread.access$3000(ActivityThread.java:125)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4627)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: cz.teamnovak.droid.Novak ESC Track guide in loader dalvik.system.PathClassLoader[/data/app/cz.teamnovak.droid-1.apk]
    at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
    at android.app.Instrumentation.newApplication(Instrumentation.java:942)
    at android.app.ActivityThread$PackageInfo.makeApplication(ActivityThread.java:644)
    ... 11 more

知道是什么原因造成的吗?

trans by 2020-01-19T19:01:51Z

Android Studio 3.1:edi中未解决的错误引用

我正在运行Ubuntu 17.10,并且刚刚将Android Studio从3.0.1版本更新为3.1。 这是帮助->关于中的版本信息:

Android Studio 3.1
Build #AI-173.4670197, built on March 22, 2018
JRE: 1.8.0_152-release-1024-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.13.0-37-generic

不幸的是,尽管在我的(第一个)Kotlin项目中IDE能够解析之前针对android的引用,但在新版本中它似乎无法解决。 这是显示我的意思的屏幕截图:

在Android Studio 3.1中,它声称不存在核心的Android功能(例如setContentView()),并且不断提示我为其创建抽象功能-我显然不想这样做。 但是,如果我按下“构建”按钮,则会得到BUILD SUCCESSFUL in 8s

有谁知道我的编辑器为什么要这样做,以及如何获得与Android相关的函数和类以再次正确解析?

编辑:更新:我现在有关于此问题的更多信息,但仍未解决:

  • 生成->清理,然后生成->重建无济于事。
  • File-> Invalidate Caches and Restart也无济于事
  • 手动Gradle同步也没有。
  • 用Java而不是Kotlin编写的其他项目也可以正常工作。
  • 链接到我遇到问题的项目(它是开源的)
trans by 2020-01-19T15:58:36Z

android-无法找到com.facebook.katana.provider.AttributionIdProvid的提供者信息

有人知道这个错误是什么意思吗? 每次我将Android应用程序连接到Facebook(通过模拟器)时,都会在LogCat Shell中得到它。

负责授权功能的代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.authorize);
    mPrefs = getPreferences(MODE_PRIVATE);
    loginPref = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    String access_token = mPrefs.getString("access_token", null);
    long expires = mPrefs.getLong("access_expires", 0);
    if(access_token != null) {
        Singelton.mFacebook.setAccessToken(access_token);
    }
    if(expires != 0) {
        Singelton.mFacebook.setAccessExpires(expires);
    }

    Singelton.mFacebook.authorize(this, new String[] {"email","user_birthday"}, new DialogListener() {
        @Override
        public void onComplete(Bundle values) {
            SharedPreferences.Editor editor = mPrefs.edit();
            editor.putString("access_token", Singelton.mFacebook.getAccessToken());
            editor.putLong("access_expires", Singelton.mFacebook.getAccessExpires());
            editor.commit();
            SharedPreferences.Editor logEditor = loginPref.edit();
            logEditor.putBoolean("login", true);
            logEditor.commit();
            addUser();
        }

        @Override
        public void onFacebookError(FacebookError error) {
            errorHandler();
        }

        @Override
        public void onError(DialogError e) {
            errorHandler();
        }

        @Override
        public void onCancel() {
            Log.d("MyApp", "Facebook cancel");
        }
    });

}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Singelton.mFacebook.authorizeCallback(requestCode, resultCode, data);
}
trans by 2020-01-19T14:44:54Z

android-如何相互转换DP,PX,SP,尤其是DP和SP?

我知道DP,SP和PX之间的区别。 搜索此主题后,我发现没有什么令我完全满意。 也许这篇文章是重复的,但我仍然想知道从DP转换为PX,从DP转换为SP,从SP转换为PX,从PX转换为SP,从SP转换为DP,从DP转换为SP的公式是什么? 我知道一些代码可以做到这一点,但是它们并不完美。

trans by 2020-01-19T12:09:28Z

android-在ListVi中显示“无项目”消息

我已经在Android应用程序中创建了一些composie UI,并且视图中还有一些ListView控件-其他控件-中。 因此,我将“ Activity”用作我的活动基类。

现在,当绑定到我的适配器的ListView为空时,我需要显示一条简单的消息,例如“ No Item”。 我知道在使用ListActivity时这是可能的,但是我不确定什么是最好的方法?

trans by 2020-01-19T10:43:21Z

处理程序-Android-按住按钮以重复操作

大家早,

我将直接承认我是开发的新手,并尝试使用Android。 我一直在尝试搜索'net,以找到有关如何实施“按住按钮以重复操作”的建议-我已经从按钮创建了自定义数字键盘,并希望有类似退格键的行为。 到目前为止,我拜访了一位以前没有编码Android的朋友,但是他做了很多C#/ Java,似乎知道他在做什么。

下面的代码可以正常工作,但是我觉得可以更整洁地完成它。 如果我错过了一点,我深表歉意,但是希望这可以解释我的方法。 我认为onTouchListener可以,但是处理线程的方式感觉不正确。

有没有更好或更简单的方法可以做到这一点?

谢谢,

中号

public class MyApp extends Activity {

private boolean deleteThreadRunning = false;
private boolean cancelDeleteThread = false;
private Handler handler = new Handler();

public void onCreate(Bundle icicle) {
    super.onCreate(icicle);

    //May have missed some declarations here...

    Button_Del.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {

           switch (event.getAction())
           {
               case MotionEvent.ACTION_DOWN:
               {
                   handleDeleteDown();
                   return true;
               }

               case MotionEvent.ACTION_UP:
               {
                   handleDeleteUp();
                   return true;
               }

               default:
                   return false;
           }
        }

        private void handleDeleteDown() {

            if (!deleteThreadRunning)
                startDeleteThread();
        }

        private void startDeleteThread() {

            Thread r = new Thread() {

                @Override
                public void run() {
                    try {

                        deleteThreadRunning = true;
                        while (!cancelDeleteThread) {

                            handler.post(new Runnable() {   
                                @Override
                                public void run() {
                                    deleteOneChar();
                                }
                            });

                            try {
                                Thread.sleep(100);
                            } catch (InterruptedException e) {
                                throw new RuntimeException(
                                    "Could not wait between char delete.", e);
                            }
                        }
                    }
                    finally
                    {
                        deleteThreadRunning = false;
                        cancelDeleteThread = false;
                    }
                }
            };

            // actually start the delete char thread
            r.start();
        }
    });
}

private void handleDeleteUp() {
    cancelDeleteThread = true;
}

private void deleteOneChar()
{
    String result = getNumberInput().getText().toString();
    int Length = result.length();

    if (Length > 0)
        getNumberInput().setText(result.substring(0, Length-1));
        //I've not pasted getNumberInput(), but it gets the string I wish to delete chars from
}
trans by 2020-01-19T10:08:52Z

深度链接意图

我按照[https://developer.android.com/training/app-indexing/deep-linking.html,]上的说明进行操作,但是当我想通过Error: Activity not started, unable to resolve Intent { act=android.intent.action.VIEW dat=example://gizmos flg=0x10000000 pkg=com.myapp.android }触发意图时:

adb shell am start
           -W -a android.intent.action.BROWSEABLE
           -d "http://example.com/gizmos" com.myapp.android

我刚得到

Error: Activity not started, unable to resolve Intent { act=android.intent.action.VIEW dat=example://gizmos flg=0x10000000 pkg=com.myapp.android }

<activity
        android:name=".activities.DeepLinkActivity"
        android:label="@string/title_activity_deep_link">
        <meta-data
            android:name="android.app.searchable"
            android:resource="@xml/searchable" />

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data
                android:scheme="http"
                android:host="example.com"
                android:pathPrefix="/gizmos" />
        </intent-filter>
    </activity>

我有明显的错误吗?

trans by 2020-01-19T10:00:06Z

Android:如何将地图视图的缩放级别设置为当前位置周围半径1公里?

我想将地图视图缩放到1公里半径,但无法弄清楚怎么办?

医生说,缩放级别1会将地球的赤道映射到256像素。 那么,如何计算需要设置的缩放级别,以使地图视图显示在1KM半径范围内?

更新:
阅读了几篇博客文章后,我编写了以下代码:

private int calculateZoomLevel() {
    double equatorLength = 6378140; // in meters
    double widthInPixels = screenWidth;
    double metersPerPixel = equatorLength / 256;
    int zoomLevel = 1;
    while ((metersPerPixel * widthInPixels) > 2000) {
        metersPerPixel /= 2;
        ++zoomLevel;
    }
    Log.i("ADNAN", "zoom level = "+zoomLevel);
    return zoomLevel;
}

这个想法是,首先我在缩放级别1中计算每像素的米数,而根据google,它显示的是使用256像素的地球赤道。 现在,每个随后的缩放级别都会放大2级,因此对于每个缩放级别,我每像素半米。 我一直这样做,直到获得一个缩放级别,在该级别中,每像素米乘以屏幕宽度得出的结果小于2000,即2 Km。

但是我不认为我得到的缩放级别显示的是2Km半径的地图。 有人可以告诉我我在做什么错吗?

trans by 2020-01-19T09:33:02Z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共193页